第2题
个带头结点的双向循环链表,链接时,结点的Lchild域作为前链域,指向结点的直接前驱,结点的Rchild域作为后链域,指向结点的直接后继。算法中,使用一个顺序栈stack,栈顶指针为top,P、t为辅助指针,head为双向循环链表的头指针。试填充算法中的空格,以完整算法。 void leafchain(BiTree&bt) {p=(BiTree)malloc(sizeof(BiTNode));
第3题
表空指针)。 typedef struct node{struct node*firstchild,*nextbrother;);D; int numberofleaf(JD*r) {int hum; if(r=NULL)*num=0; else if(r->firstchild==NULL) num=(1)+numberofleaf(r一>nextbrot
第4题
/结点的数据场 struct node*left; //给出结点的左儿子的地址 struct node*right; //给出结点的右儿子的地址) 请在(1)、(2)二题的__________处进行填空,完成题目要求的功能。注意,每空只能填 一个语句,多填为0分。 (1)求出以T为根的二叉树或子树的结点个数。 int Size
第5题
正确的语句。设线索二叉树的结点数据结构为(1flag,left,data,right,rflag),其中:1flag=0,left指向其左孩子,lflag=1,left指向其前驱;rflag=0,right指向其右孩子,rflag=1,right指向其后继。 prior(node,x) {if(node!=null) if((1) )*x=node一>right; else*
第6题
、右孩子域lchild,rchild,左、右标志域ltag,rtag。规定标志域为1是线索,0是指向孩子的指针。请在空格处添上适当内容,每个空格只填一个语句。 inorderthread(thr) (p=thr一>Ichild; while(——(1]——){ while(——(2)——) p=——(3)——; printf(p一>data); while(
第7题
针9/ (int hl,hr; if(bt==NULL) return (1) ; hl=height(bt一>ichild); hr=height(bt一>rchiid); if(2)(3); return(hr+1); } 【西南交通大学2000一、11】
第8题
include“stdio.h” typedef struct BinNode {chardata; struct BinNode*ich,*rch;)BinNode,*Bintree; struct chtp(int len;char ch[100];)S; struct queue {struct BinNode*elem[100];
第9题
的前序遍历和中序遍历序列,生成一棵用二叉链表表示的二叉树并打印出后序遍历序列,请写出程序中所缺的语句。 define MAX 100 typedef struct Node {char info;struct Node*llink,*rlink;)TNODE; char pred[MAX],inod[MAX]; main(int argc,int**argv) {TNODE*
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!