按关键词阅读: 期末 综合 练习 数据结构
5设有一个长度为22的顺序表 , 要删除第8个元素需移动元素的个数为。
6在一棵二叉树中 , 若编号为i的结点存在右孩子 , 则右孩子的顺序编号为 。
7在一棵二叉树中 , 若编号为i的结点存在左孩子 , 则左孩子的顺序编号为。
8设有一个长度为20的顺序表 , 要插入一个 。
24、元素 , 并作为第8个元素 , 需移动元素的 个 数为 。
9设一棵有n个叶结点的二叉树 , 除叶结点外每个结点度数都为2 , 则该树共有 个结点 。
10结构中的数据元素存在多对多的关系称为结构 。
11在对一组序列 45,29,87,12,6,63,55,37,78进行直接插入排序时 , 当把第8个记录37 插 入到有序表时 , 为寻找插入位置需比较_次 。
(由小到大排序)12设有一棵深度为4的完全二叉树 , 第四层上有5个结点 , 该树共有_个结点 。
(根所在结点为第1层)13 n个元素进行冒泡法排序 , 通常需要进行 趟冒泡 。
14一棵二叉树中有n个非叶结点 , 每一个非叶结点的度数都为2 , 则该树共有_ 个叶结点 。
15一棵有21个结点的哈 。
25、夫曼树,该树中有 _ 个叶结点 。
16在对一组记录55,39,97,22,16,73,65,47,88进行直接插入排序时 , 当把第7个记录65 插 入到有序表时 , 为寻找插入位置需比较_次 。
由小到大排序17遍历二叉排序树可得到一个有序序列 。
18. n个元素进行冒泡法排序 ,第j趟冒泡要进行 次元素间的比较 。
19. 广义表 a , a ,b , d , e , i ,j,k的长度是 。
20一棵有n个叶结点的哈夫曼树 , 则该树共有_个结点 。
21. 广义表的 a , a ,b , d , e , i ,j,k深度是。
22中序遍历可得到一个有序序列 。
23. 序列14,12,15,13,18 。
26、,16,采用冒泡排序算法升序,经一趟冒泡后,序列的结果 是 _ _ 。
24广义表 a ,b , d , e , i ,j,k的长度是。
三、综合题1设查找表为7,15,21,22,40,58,68,80,88,89,120 ,元素的下标依次为1,2,3, , 11. (1)画出对上述查找表进行折半查找所对应的判定树(树中结点用下标表示)(2)说明成功查找到元素40需要经过多少次比较(3)求在等概率条件下 , 成功查找的平均比较次数2. (1)设有数据集合40 , 29 , 7 , 73 , 101 , 4 , 55 , 2 , 81 , 92 , 39 , 依次取集合 中各数据构造一棵二叉排序树 。
2一组记录的关键字序列为(5 , 8 , 6 ,。
27、3 , 4 , 7) , 利用堆排序(堆顶元素是最 小元素)的方法建立初始堆 。
要求用完全二叉树表示3. 1 一组记录的关键字序列为(47 , 80 , 57 , 39 , 41 , 46) , 给出利用堆排序(堆顶 元素是最小元素)的方法建立的初始堆(要求以完全二叉树描述 ) 。
2 对关键字序列 47,80,57,39,41,85采用快速排序 , 给出以第一个关键字为分割 元素 , 经过一次划分后的结果 。
3 如图3所示的二叉树 , 给出其前序遍历序列 。
4 1 以2 , 3 , 4 , 7 , 8 , 9作为叶结点的权 , 构造一棵哈夫曼树 2 给出上述哈夫曼树叶结点的哈夫曼编码 。
3一组记录的关键字序列为(37 , 70 , 47 , 29 , 31 , 85) , 利用快速排序 , 以 。
28、第一 个关键字为分割元素 , 给出经过一次划分后结果 。
(由小到大排序)四、程序填空题1以下程序是中序遍历二叉树的递归算法的程序 , 完成程序中空格部分(树结构中左、右指针域分别为left和right , 数据域data为字符型 , BT指向根结点) 。
void Inorder struct BTreeNode *BTifBTNULL InorderBT-left;
(1) ;
(2) ;
利用上述程序对右图进行中序遍历 , 结果是 (3) ;
四、程序填空题1. (1) printf“c”,BT-data (2) InorderBT-right (3)dbeafc2.设线性表为(6 , 10 , 16 , 4) , 以下程序用说明 。
29、结构变量的方法建立单向链表 , 并输出链表中各结点中的数据 。
define NULL 0 void mainNODE a,b,c,d,*head,*p;
a.data6;
b.data10;
c.data16;
d.data4;
/*d是尾结点*/head (1) ;
a.nextb.nextc.next (2) ;
/*以上结束建表过程*/phead;
/*p为工作指针 , 准备输出链表*/ do printf“dn”, (3) ;
(4) ;
while (5) ;
2 (1) int i,j,flag;
forj1;
(1) ;
j;
flag0;
fori1;
(2) ;
i ifai.keyai1.k 。
30、eyflag1;
tempai;
(3) ;
(4) ;
ifflag 0break;
程序中flag的功能是(5) 3 (1)jn-1(2)in-j(3)aiai1(4)ai1temp(5)当某趟冒泡中没有出现交换则已排好序 , 结束循环4.以下程序是中序遍历二叉树的递归算法的程序 , 完成程序中空格部分(树结构中左、 右指针域分别为left和right , 数据域data为字符型 , BT指向根结点) 。
声明:本文是由网友投稿,文中所阐述的观点不代表本网的立场。
来源:(未知)
【傻大方】网址:/a/2020/1125/00122566.html
标题:数据结构|数据结构(本)期末综合练习( 四 )