问答题 已知一棵二叉树是以二叉链表的形式存储的,其结点结构说明如下: struct node{int data; //结点的数据场 struct node*left; //给出结点的左儿子的地址 struct node*right; //给出结点的右儿子的地址) 请在(1)、(2)二题的__________处进行填空,完成题目要求的功能。注意,每空只能填 一个语句,多填为0分。 (1)求出以T为根的二叉树或子树的结点个数。 int Size(struct node*T) {if(①)return 0 ; else—②一;} (2)求出以T为根的二叉树或子树的高度。注:高度定义为树的总的层次数。 int height(struct node*T) {if(T==NULL)⑤;else④;) 【上海交通大学2004三(10分)】
【正确答案】正确答案:①T==null ②return(1+size(T一>left)+size(T一>right))③return(0)ireturn (height(T一>lefl)>height(T一>right)?height(T一>left)+1; height(T一>right)+1)
【答案解析】