初级程序员填空集试卷(初级程序员)_7.docVIP

  • 0
  • 0
  • 约5.33千字
  • 约 3页
  • 2021-04-23 发布于北京
  • 举报

初级程序员填空集试卷(初级程序员)_7.doc

试卷第 PAGE 1 页共 NUMPAGES 3 页 初级程序员填空集试卷(初级程序员) 姓名:_____________ 年级:____________ 学号:______________ 题型 选择题 填空题 解答题 判断题 计算题 附加题 总分 得分 评卷人 得分 1、[说明]已知某二叉树的非叶子节点都有两个孩子节点,现将该二叉树存储在结构数组Ht中。节点结构及数组Ht的定义如下:#define MAXLEAFNUM 30Struct nodechar ch;char *pstr;int parent;int lchild, rchiid;;Struct node Ht[2 *MAXLEAFNUM];该二叉树的n个叶子节点存储在下标为1~n的Ht数组元素中。例如,某二叉树如图8-26所示,其存储结构如图8-27所示,其中,与叶子节点a对应的数组元素下标为1,a的父节点存储在Ht[5],表示为Ht[1].parent=5。Ht[7].parent=0表示7号节点是树根,Ht[7].lchild=3、Ht[7].rchild=6分别表示7号节点的左孩子是3号节点、右孩子是6号节点。如果用“0”或“1”分别标识二叉树的左分支和右分支如图8-26所示,从根节点开始到叶子节点为止,按所经过分支的次序将相应标识依次排列,可得到一个0、1序列,称之为对应叶子节点的编码。例如,图8-26中a、b、c、d的编码分别是100、101、0、11。函数LeafCode(Ht[],n)的功能是:求解存储在Ht中的二叉树中所有叶子节点(n个)的编码,叶子节点存储在Ht[1]~Ht[n]中,求出的编码存储区由对应的数组元素pstr域指示。函数LeafCode从叶子到根逆向求叶子节点的编码。例如,对图8-26中叶子节点a求编码的过程如图8-28所示。[函数]typedef enum Status ERROR, OK Status;Status LeafCode (Struet node Ht[], int n)int pc, pf;int i, start;char tstr[31]=’/0’);for(i=1; (1) ; i++)start=29;pc=i; pf=Ht[i].parent;while(Pf!= (2) )if( (3) . lchiid==pc)tstr[--start]=’0’;elsetstr[-start]=’1’;pc= (4) ; pf=Ht[Pf].parent;Ht[i].pstr=(char*)malloc(31-start);if(!Ht[i].pstr)return ERROR;strcpy(Ht[i]. pstr, (5) ;return OK;?(1)处填( ) 2、[说明]已知某二叉树的非叶子节点都有两个孩子节点,现将该二叉树存储在结构数组Ht中。节点结构及数组Ht的定义如下:#define MAXLEAFNUM 30Struct nodechar ch;char *pstr;int parent;int lchild, rchiid;;Struct node Ht[2 *MAXLEAFNUM];该二叉树的n个叶子节点存储在下标为1~n的Ht数组元素中。例如,某二叉树如图8-26所示,其存储结构如图8-27所示,其中,与叶子节点a对应的数组元素下标为1,a的父节点存储在Ht[5],表示为Ht[1].parent=5。Ht[7].parent=0表示7号节点是树根,Ht[7].lchild=3、Ht[7].rchild=6分别表示7号节点的左孩子是3号节点、右孩子是6号节点。如果用“0”或“1”分别标识二叉树的左分支和右分支如图8-26所示,从根节点开始到叶子节点为止,按所经过分支的次序将相应标识依次排列,可得到一个0、1序列,称之为对应叶子节点的编码。例如,图8-26中a、b、c、d的编码分别是100、101、0、11。函数LeafCode(Ht[],n)的功能是:求解存储在Ht中的二叉树中所有叶子节点(n个)的编码,叶子节点存储在Ht[1]~Ht[n]中,求出的编码存储区由对应的数组元素pstr域指示。函数LeafCode从叶子到根逆向求叶子节点的编码。例如,对图8-26中叶子节点a求编码的过程如图8-28所示。[函数]typedef enum Status ERROR, OK Status;Status LeafCode (Struet node Ht[], int n)int pc, pf;int i, start;char tstr[31]=’/0’);for(i=1; (1) ; i++)start=29;pc=i; pf=Ht[i].parent;while(Pf!=

文档评论(0)

1亿VIP精品文档

相关文档