结点类型和存储结构如下: typedef 8truct {int key; datatype data; int count; }node;nod
第1题
第3题
一棵树以孩子兄弟表示法存储,递归算法numberofleaf计算并返回根为r的树中叶结点的个数(NULL代表空指针)。 typedef struct node{ struct node * firstchild.* nextbrother; }JD; int numberofleaf(JD * r){ int num; if(r==NULL) num=0; else if(r->firstchild==NULL){ num= (1) +numberofleaf(r->nextbrother); } else{ (2) ; } return(num); }
第4题
双端队列(duque)是一个可以在任一端进行插入和删除的线性表。现采用一个一维数组作为双端队列的数据存储结构,使用c语言描述如下: deftne maxsize 32{数组中可容纳的元素个数} typedef struct { datatype elem[maxsize]; int endl,end2; }duque; 试编写两个算法add(duque QU,datatype x,int tag)和delete(duque QU,datatype&x,int tag)用以在此双端队列的任一端进行插入和删除。当tag=0时在左端endl端操作,当tag=1时在右端end2端操作。
第5题
下图是一个AVL树,如果要在树中插入一个值为1的结点。试回答
struct Node;
typedef struct Node*PNode;
struct Node{
char info;
int a; /*平衡因子*/
PNode llink,rlink;
};
r,s为两个指针变量,类型为Pnode。
第7题
A.结构是若干变量的集合,这些变量的类型可以相同
B.共用体(联合)允许不同数据类型的数据使用共同的存储区域
C.位段是一种特殊的结构成员。位段的类型可以是char、int、float、double等。
D.不能用&来取结构的地址
E.不能将结构作为整体来进行存取
第9题
A.结点是有独立含义的数据最小单位
B.数据的逻辑结构分为表结构和树结构
C.数据的存储结构分为线性结构和非线性结构
D.数据元素是数据的基本单位
第10题
设二叉树用二指针结构存储(可以是动态存储结构),元素值为整数,且元素值无重复,请编写子程序,求出以元素值等于某个给定的整数的结点为根的子树中的各个叶子结点。【华南理工大学20032.3(2)(23/2分)】
第11题
为建立如下图所示的存储结构(即每个结点两个域,p是指向结点的指针域,data用以存放整型数),请将定义补充完整。
p data a struct list { 【 】; int data;}a;