正在加载图片...
第5章递归与广义表 in=l; return( float )(f->data );3 else float Sum=Avg(f->link, n)*n; n++: return(f->data+ Sum)/n;) nclude"Recurvelist h" ∥定义在主文件中 int main( int argc, charang[)i List test; int finished; cout<<“输入建表结束标志数据: 输入建表结束标志数 test NewList( finished ) ∥建立链表 test PrintList ( ∥印链表 cout <<The Max is: <<test GetMax ( cout<<"nThe Num is: "<<test. GetNum ( out <<"nThe Ave is: "< test GetAve 0<<"n': printf("Hello World! n"); return 0 5-6画出下列广义表的图形表示和它们的存储表示 (I)D(A(c), B(e), C(a, L(b, c, d))) (2)J1(J2(J1,a,J3(1),J3(J1) 【解答】(1)D(A(c),B(e),C(a,L(b,c,d)(2)Jl(J2(J1,a,J3(J),J3(J) D-西 回[团 C面囚 -四[2 5-7利用广义表的head和tai操作写出函数表达式,把以下各题中的单元素 banana从广义 表中分离出来:第 5 章 递归与广义表 60 { n = 1; return ( float ) (f ->data ); } else { float Sum = Avg ( f ->link, n ) * n; n++; return ( f ->data + Sum ) / n; } } #include "RecurveList.h" //定义在主文件中 int main ( int argc, char* argv[ ] ) { List test; int finished; cout << “输入建表结束标志数据 :”; cin >> finished; //输入建表结束标志数据 test.NewList ( finished ); //建立链表 test.PrintList ( ); //打印链表 cout << "\nThe Max is : " << test.GetMax ( ); cout << "\nThe Num is : " << test.GetNum ( ); cout << "\nThe Ave is : " << test.GetAve () << '\n'; printf ( "Hello World!\n" ); return 0; } 5-6 画出下列广义表的图形表示和它们的存储表示: (1) D(A(c), B(e), C(a, L(b, c, d))) (2) J1(J2(J1, a, J3(J1)), J3(J1)) 【解答】(1) D(A(c), B(e), C(a, L(b, c, d))) (2) J1(J2(J1, a, J3(J1)), J3(J1)) 5-7 利用广义表的 head 和 tail 操作写出函数表达式,把以下各题中的单元素 banana 从广义 表中分离出来: D A B C c e a L b c d J1 J2 J3 a D A 0 A 0 D 2 2 2 1 c B 0 B 1 e C 0 C 1 a L 0 L 2 1 b 1 c 1 d ∧ ∧ ∧ ∧ ∧ J1 0 J1 2 2 J2 0 J2 2 1 a 2 J3 0 J3 2 ∧ ∧ ∧
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有