试按图5-10所示结点结构编写复制广义表的递归算法。[img=831x129]17da2217a15ffe0.png[/img]
void GList Copy (GList A,GList &B)//复制广义表的递归算法{if (!A->tag)//当结点为原子时,直接复制B->tag=0;B->atom=A->atom;}else //当结点为子表时{B->tag=1;if(A->ptr.hp){B->ptr.hp=malloc (sizeof (GLNode));GList_Copy (A->ptr.hp,B->ptr.hp) ;}//复制表头if (A->ptr.tp){B->ptr.tp=malloc ( sizeof(GLNode)) ;GList_Copy (A->ptr.tp,B->ptr.tp);}//复制表尾}//else}//GList_Copy
举一反三
- 1.试按教科书5.5节图5.10所示的结点结构编写复制广义表的递归算法。
- 1.试按教科书5.5节图5.10所示的结点结构编写复制广义表的递归算法。//由广...,L->tp);}}returnOK;}
- 1.试按教科书5.5节图5.10所示的结点结构编写复制广义表的递归算法。//由广义表L复制广义表TintCopyGList(GList&T,GList&L){if(!L)T=NULL;else{T=newGLNode;if(!T)exit(OVERFLOW);T->tag=L->tag;if(L->tag==ATOM)T->atom=L->atom;else{________CopyGList(T->tp,L->tp);}}returnOK;}
- 试编写递归算法,逆转广义表中的数组元素。例如:将广义表:(a,(b,c),) , (((d),e),f)逆转为: ((f.,(e,(d))),(() , (c,b)) ,a).
- 已知图5-2所示为广义表的存储结构图,其节点结构如图5-1。写出各图表示的广义表。[img=639x246]17d9cf6c41227c9.png[/img][img=658x376]17d9cf6fbf1b534.png[/img]
内容
- 0
已知图5-3所示为广义表的存储结构图,其节点结构如图5-1。写出各图表示的广义表。[img=750x229]17d9cf7ac41d85d.png[/img][img=658x376]17d9cf6fbf1b534.png[/img]
- 1
函数[img=92x27]1802d36e0ac89ef.png[/img]在区间[img=60x25]1802d36e1405431.png[/img]上的广义积分等于 A: 10 B: 5 C: 15 D: 20
- 2
函数[img=92x27]1802de50d3da3b0.png[/img]在区间[img=60x25]1802de50dbdc4df.png[/img]上的广义积分等于 A: 10 B: 5 C: 15 D: 20
- 3
下图所示的结构是一个( )。[img=548x163]17add095049612f.png[/img][br][/br] A: 线性表 B: 树形结构 C: 图结构 D: 广义表
- 4
经肝门静脉左支矢状部横断面[img=1860x1281]17e0c78649d005f.jpg[/img]图中10所示肝段为();图中15所示结构为();图中16所示结构为();图中17所示结构为();图中19所示结构为();图中21所示肝段为();图中22所示肝段为();图中27所示结构为()。