数据结构试卷
- 格式:doc
- 大小:70.00 KB
- 文档页数:4
得分一、单项选择题(10 小题,每小题 2 分,共 20 分)1.设栈 S 和队列 Q 的初始状态为空,元素 e1,e2,e3,e4,e5,e6 依次通过栈 S,一个元素出栈后即进入队列 Q,若 6 个元素出队的顺序是 e2,e4,e3,e6,e5,e1,则栈 S 的容量至少应该是()。
BA.2B.3C.4D.62.由 4 个叶子结点构造一棵哈夫曼树,该树的总结点数是(A.4 B.5 C.6D)。
D.73.对于长度为m(m>1)的指定序列,通过初始为空的一个栈、一个队列后,错误的叙述是)。
(DA.若入栈和入队列的序列相同,则出栈序列和出队序列可能相同B.若入栈和入队列的序列相同,则出栈序列和出队序列可以互为逆序C.入队序列与出队序列关系为1:1,而入栈序列与出栈序列关系是1: n (n≥1)D.入队序列与出队序列关系为1: n (n≥1),而入栈序列与出栈序列关系是1:14.在一个单链表 HL 中,若要删除由指针 q 所指结点的后继结点,则执行(A)。
A.p=q->next; q->next=p->next; C.p=q->next; p->next=q->next;B.p=q->next; q->next=p;D.q->next= q->next->next; q->next=q;5.假设有如下遗产继承规则:丈夫和妻子可以相互继承遗产;子女可以继承父亲或母亲的遗产;子女之间不能相互继承。
则表示该遗产继承关系的数据结构应该是()。
A.树B.图C.线性表D.集合B6.设数组 S[n]作为两个栈 S1 和 S2 的存储空间,对任何一个栈只有当 S[n]全满时才不能进行进栈操作。
为这两个栈分配空间的最佳方案是(A.S1 的栈底位置为 0,S2 的栈底位置为n-1B.S1 的栈底位置为 0,S2 的栈底位置为n/2C.S1 的栈底位置为 0,S2 的栈底位置为nD.S1 的栈底位置为 0,S2 的栈底位置为 1A)。
《数据结构》期末考试试卷试题及答案第一部分:选择题(每题2分,共20分)1. 下面哪个数据结构是线性结构?A. 树B. 图C. 队列D. 网络流2. 下面哪个数据结构用于实现广度优先搜索算法?A. 栈B. 队列C. 散列表D. 堆3. 下面哪个数据结构用于实现深度优先搜索算法?A. 栈B. 队列C. 散列表D. 堆4. 下面哪个数据结构用于实现快速排序算法?A. 栈B. 队列C. 散列表D. 堆5. 下面哪个数据结构用于实现优先队列?A. 栈B. 队列C. 散列表D. 堆6. 下面哪个数据结构用于实现哈希表?A. 栈B. 队列C. 散列表D. 堆7. 下面哪个数据结构用于实现最小树算法?A. 栈B. 队列C. 散列表D. 堆8. 下面哪个数据结构用于实现拓扑排序算法?A. 栈B. 队列C. 散列表D. 堆9. 下面哪个数据结构用于实现最短路径算法?A. 栈B. 队列C. 散列表D. 堆10. 下面哪个数据结构用于实现并查集算法?A. 栈B. 队列C. 散列表D. 堆第二部分:填空题(每题2分,共20分)1. 链表是一种______数据结构。
2. 二叉树的节点最多有______个子节点。
3. 堆是一种特殊的______。
4. 散列表的查找效率取决于______。
5. 图的遍历算法包括______和______。
6. 快速排序算法的平均时间复杂度为______。
7. 哈希表中的冲突解决方法有______和______。
8. 最小树算法包括______和______。
9. 最短路径算法包括______和______。
10. 并查集算法用于解决______问题。
第三部分:简答题(每题10分,共50分)1. 请简述栈和队列的区别。
2. 请简述二叉搜索树的特点。
3. 请简述哈希表的原理。
4. 请简述图的深度优先搜索算法。
5. 请简述最小树算法的原理。
第四部分:编程题(每题20分,共50分)1. 编写一个函数,实现链表的插入操作。
数据结构试卷(一)一、单选题(每题2 分,共20分)1.栈和队列的共同特点是( )。
A.只允许在端点处插入和删除元素B.都是先进后出C.都是先进先出D.没有共同点2.用链接方式存储的队列,在进行插入运算时( ).A. 仅修改头指针B. 头、尾指针都要修改C. 仅修改尾指针D.头、尾指针可能都要修改3.以下数据结构中哪一个是非线性结构?( )A. 队列B. 栈C. 线性表D. 二叉树4.设有一个二维数组A[m][n],假设A[0][0]存放位置在644(10),A[2][2]存放位置在676(10),每个元素占一个空间,问A[3][3](10)存放在什么位置?脚注(10)表示用10进制表示。
A.688 B.678 C.692 D.6965.树最适合用来表示( )。
A.有序数据元素B.无序数据元素C.元素之间具有分支层次关系的数据D.元素之间无联系的数据6.二叉树的第k层的结点数最多为( ).A.2k-1 B.2K+1 C.2K-1 D. 2k-17.若有18个元素的有序表存放在一维数组A[19]中,第一个元素放A[1]中,现进行二分查找,则查找A[3]的比较序列的下标依次为( )A. 1,2,3B. 9,5,2,3C. 9,5,3D. 9,4,2,38.对n个记录的文件进行快速排序,所需要的辅助存储空间大致为A. O(1)B. O(n)C. O(1og2n)D. O(n2)9.对于线性表(7,34,55,25,64,46,20,10)进行散列存储时,若选用H(K)=K %9作为散列函数,则散列地址为1的元素有()个,A.1 B.2 C.3 D.410.设有6个结点的无向图,该图至少应有( )条边才能确保是一个连通图。
A.5B.6C.7D.8二、填空题(每空1分,共26分)1.通常从四个方面评价算法的质量:_________、_________、_________和_________。
2.一个算法的时间复杂度为(n3+n2log2n+14n)/n2,其数量级表示为________。
数据结构期中考试试卷一、选择题(每题2分,共20分)1. 在数据结构中,线性表是按照什么顺序排列的元素集合?A. 任意顺序B. 无序C. 有序D. 线性2. 链表与数组相比,其主要优点是什么?A. 节省空间B. 访问速度快C. 插入和删除操作灵活D. 内存分配简单3. 栈(Stack)是一种遵循什么原则的数据结构?A. 先进先出B. 先进后出C. 后进先出D. 后进后出4. 哈希表解决冲突最常用的方法是?A. 链接法B. 替换法C. 线性探测法D. 二次探测法5. 树和二叉树的主要区别是什么?A. 树的节点数可以比二叉树多B. 树的节点可以有多个子节点C. 树的节点可以没有子节点D. 树的节点可以有左子节点和右子节点6. 什么是二叉搜索树(BST)?A. 所有左子节点的值小于根节点的值B. 所有右子节点的值大于根节点的值C. 所有左子节点的值大于根节点的值D. A和B都正确7. 图的邻接矩阵表示法适用于哪种类型的图?A. 稠密图B. 稀疏图C. 有向图D. 无向图8. 排序算法的时间复杂度为O(n^2)的算法有哪些?A. 选择排序B. 冒泡排序C. 插入排序D. 所有以上9. 什么是递归?A. 函数调用自身B. 函数调用其他函数C. 循环结构D. 条件语句10. 动态规划主要用于解决什么问题?A. 排序问题B. 查找问题C. 优化问题D. 数据存储问题二、简答题(每题5分,共20分)1. 请简述链表和数组的区别。
2. 解释什么是图的深度优先搜索(DFS)。
3. 什么是二叉堆?请简述其性质。
4. 描述快速排序算法的基本思想。
三、编程题(每题15分,共30分)1. 编写一个函数,实现单链表的反转。
2. 编写一个函数,实现二叉树的前序遍历。
四、算法设计题(每题15分,共30分)1. 设计一个算法,用于在无序数组中找到第k小的元素。
2. 设计一个算法,实现最小生成树的克鲁斯卡尔算法。
五、综合应用题(10分)假设你正在开发一个在线图书管理系统,请设计一个数据结构来存储书籍信息,并实现以下功能:- 添加新书- 删除书籍- 查找特定书籍- 列出所有书籍请提供数据结构的设计思路和相应的伪代码。
专升本数据结构试卷答案一、选择题(每题 2 分,共 30 分)1、在数据结构中,从逻辑上可以把数据结构分为()。
A 动态结构和静态结构B 紧凑结构和非紧凑结构C 线性结构和非线性结构D 内部结构和外部结构答案:C解析:数据结构从逻辑上分为线性结构和非线性结构。
线性结构是数据元素之间存在一对一的关系,如线性表、栈、队列等;非线性结构是数据元素之间存在一对多或多对多的关系,如树、图等。
2、以下数据结构中,()是非线性数据结构。
A 栈B 队列C 线性表D 二叉树答案:D解析:二叉树是一种非线性数据结构,每个节点最多有两个子节点。
栈、队列和线性表都属于线性数据结构。
3、一个顺序存储的线性表的第一个元素的存储地址是 100,每个元素的长度为 2,则第 5 个元素的地址是()。
A 108B 110C 106D 104答案:A解析:第一个元素地址为 100,每个元素长度为 2,所以第 5 个元素的地址为 100 + 2×(5 1) = 108。
4、在单链表中,增加头结点的目的是()。
A 方便运算的实现B 使单链表至少有一个结点C 标识表结点中首结点的位置D 说明单链表是线性表的链式存储实现答案:A解析:头结点的作用是方便运算的实现,比如在插入和删除操作时,可以避免对第一个元素的特殊处理。
5、设栈的顺序存储空间为 S(1:m),初始状态为 top = 0。
现经过一系列入栈与退栈运算后,top = 20,则当前栈中有()个元素。
A 20B 21C m 20D m 19答案:A解析:栈是一种先进后出的数据结构,top 指向栈顶元素的位置,top = 20 说明当前栈中有 20 个元素。
6、循环队列的存储空间为 Q(1:50),初始状态为 front = rear = 25。
经过一系列入队与退队运算后,front = 15,rear = 10,则循环队列中的元素个数为()。
A 5B 6C 16D 49答案:B解析:循环队列中元素个数的计算公式为:(rear front + 50) % 50。
模拟试题四模拟试题四一、选择题(20分)1。
由两个栈共享一个存储空间的好处是()。
A)减少存取时间,降低下溢发生的几率B)节省存储空间,降低上溢发生的几率C)减少存取时间,降低上溢发生的几率D)节省存储空间,降低下溢发生的几率2。
设有两个串p和q,求q在p中首次出现位置的运算称做()。
A)连接B)模式匹配 C)求子串D)求串长3。
n个顶点的连通图中边的条数至少为()。
A)0 B)l C)n—l D)n4.对一个具有n个元素的线性表,建立其有序单链表的时间复杂度为( )。
A)O(n)B)O(1)C)O(n2) D) O(log2n)5.在双向循环链表中,在p所指的结点之后插入s指针所指的结点,其操作是( )。
A) p—>next=s; s—〉prior=n;p->next—>prior=s;s-〉next:p->next。
B) s—〉priOFp;s->next—p->next;p—>next=s; p—〉next->priOFS.C) p-〉next=s;p-〉next—〉priOFS; s->prior=p; s-〉next=p—〉next.D) s—>prior=p; s-〉next=p—〉next; p-〉next—〉priOFS;p-〉next=S.6,串的长度是( ).A)串中不同字符的个数 B)串中不同字母的个数C)串中所含字符的个数n(n>0) D)串中所含字符的个数n(n≥0)7.若有一个钱的输入序列是l,2,…,n,输出序列的第一个元素是n,则第i个输出元素是()。
A) n—i B) n—i—l C)n—i+l D)不确定8.设有一个栈,元素的进栈次序为A,B,C,D,E,下列( )是不可能的出栈序列。
A) A,B,C,D,E B)B,C, D,E,AC)E,A, B,C,D D)E,D, C,B,A9。
在一棵度为3的树中,度为3的结点数有2个,度为2的结点数有1个,度为l的结点数有2个,那么度为0的结点数有()个。
数据结构与算法试卷自考一、单选题(每题3分,共30分)1. 在数据结构中,从逻辑上可以把数据结构分成()。
A. 动态结构和静态结构。
B. 紧凑结构和非紧凑结构。
C. 线性结构和非线性结构。
D. 内部结构和外部结构。
2. 线性表的顺序存储结构是一种()的存储结构。
A. 随机存取。
B. 顺序存取。
C. 索引存取。
D. 散列存取。
3. 栈和队列的共同特点是()。
A. 都是先进后出。
B. 都是先进先出。
C. 只允许在端点处插入和删除元素。
D. 没有共同点。
4. 对于一个具有n个顶点的无向图,若采用邻接矩阵表示,则该矩阵的大小是()。
A. n.B. (n - 1)^2.C. n - 1.D. n^2.5. 下面关于二叉树的叙述正确的是()。
A. 一棵二叉树中叶子结点的个数等于度为2的结点个数加1。
B. 二叉树中不存在度大于2的结点。
C. 二叉树的度为2。
D. 二叉树的度为0或1。
6. 具有n个结点的完全二叉树的深度为()。
A. ⌊log₂n⌋ + 1.B. ⌈log₂n⌉ + 1.C. ⌊log₂n⌋.D. ⌈log₂n⌉.7. 对线性表进行二分查找时,要求线性表必须()。
A. 以顺序方式存储。
B. 以链式方式存储。
C. 以顺序方式存储,且结点按关键字有序排列。
D. 以链式方式存储,且结点按关键字有序排列。
8. 排序方法中,从未排序序列中依次取出元素与已排序序列(初始时为空)中的元素进行比较,将其放入已排序序列的正确位置上的方法,称为()。
A. 希尔排序。
B. 冒泡排序。
C. 插入排序。
D. 选择排序。
9. 快速排序在()情况下最不利于发挥其长处。
A. 待排序的数据量太大。
B. 待排序的数据中含有多个相同值。
C. 待排序的数据已基本有序。
D. 待排序的数据数量为奇数。
10. 算法的时间复杂度取决于()。
A. 问题的规模。
B. 待处理数据的初态。
C. 计算机的配置。
D. A和B。
二、填空题(每题3分,共30分)1. 数据的逻辑结构有四种基本类型:集合结构、______结构、树形结构和图状结构。
《数据结构》试卷一一、填空题:(共20分)1、当线性表的元素总数基本稳定,且很少进行插入和删除操作,但要求以最快的速度存取线性表中的元素时,应采用存储结构。
2、队列是限制插入只能在表的一端,而删除在表的另一端进行的线性表,其特点是。
3、在一棵二叉树中,度为0的结点个数为n0,度为2的个数为n2,则n0= 。
4、二叉树的前序遍历序列等同于该二叉树所对应森林的遍历序列5、对一棵二叉排序树,若以遍历该树,将得到一个以关键字递增顺序排列的有序序列。
6、三个结点a,b,c组成二叉树,共有种不同的结构。
7、在AVL树中,由于在A结点的右孩子的右子树上插入结点,使A结点的平衡因子由-1变为-2,使其失去平衡,应采用型平衡旋转。
8、图的遍历有两种,它们是。
9、堆排序的时间复杂度为。
10、在含有N个结点的二叉链表中有空链域,通常用这些空链域存储线索,从而得另一种链式存储结构----线索链表。
二、单项选择题(共20分)1、若进栈序列为1,2,3,4,假定进栈和出栈可以穿插进行,则可能的出栈序列是()(A)2,4,1,3(B)3,1,4,2(C)3,4,1,2(D)1,2,3,42、有一棵非空的二叉树,(第0层为根结点),其第i层上最多有多少个结点?()(A)2i(B)21-i(C)21+i(D) i3、设电文中出现的字母为A,B,C,D,E,每个字母在电文中出现的次数分别为9,27,3,5,11,按huffman编码,则字母A编码为()(A)10(B)110(C)1110(D)11114、下面关于数据结构的叙述中,正确的叙述是()(A)顺序存储方式的优点是存储密度大,且插、删除运算效率高(B)链表中每个结点都恰好包含一个指针(C)包含n个结点的二叉排序树的最大检索长度为logn2(D)将一棵树转为二叉树后,根结点无右子树5、程序段:y:=0while n>=(y+1)*(y+1) doy:=y+1enddo的时间复杂度为()(A)O(n) (B)O(n2) (C)O(n2/1) (D)O(1)6、排序方法中,关键码比较的次数与记录的初始排列无关的是( )(A) shell排序 (B) 归并排序 (C) 直接插入排序 (D) 直接选择排序7、数组q[0..n-1]作为一个环行队列,f 为当前队头元素的前一位置,r为队尾元素的位置,假定队列中元素的个数总小于n,则队列中元素个数为( )(A) r-f (B) n+f-r (C) n+r-f (D) (n+r-f) mod n8、为了有效的利用散列查找技术,需要解决的问题是:( )Ⅰ:找一个好的散列函数Ⅱ:设计有效的解决冲突的方法Ⅲ:用整数表示关键码值(A) Ⅰ和Ⅲ (B) Ⅰ和Ⅱ (C) Ⅱ和Ⅲ (D) Ⅰ,Ⅱ和Ⅲ9、引入线索二叉树的目的是()(A) 加快查找结点的前驱或后继的速度(B) 为了能在二叉树中方便的进行插入与删除(C) :为了能方便的找到双亲(D) 使二叉树的遍历结果唯一10、用二分(折半)查找表的元素的速度比用顺序法()(A) 必然快(B) 必然慢(C): 相等(D): 不能确定三、简答题:(共40分)1、已知某二叉树按中序遍历序列为BFDAEGC,按前序遍历序列为ABDFCEG,试画出该二叉树形状,并写出它的后序遍历序列。
数据结构试卷一. (共75题,共150分)1. 数据的基本单位是()。
(2分)A.数据元素B.记录C.数据对象D.数据项★检查答案标准答案:A2. ()是数据的不可分割的最小单位。
(2分)A.数据对象B.数据元素C.数据类型D.数据项★检查答案标准答案:D3. 算法的空间复杂度是对算法()的度量。
(2分)A.时间效率B.空间效率C.可读性D.健壮性★检查答案标准答案:B4. ()是限制了数据元素的内部结构仅为一个字符的线性表。
(2分)A.栈B.队列C.串D.数组★检查答案标准答案:B5. 串的长度是指串中所含()的个数。
(2分)A.不同字符B.不同字母C.相同字符D.所有字符★检查答案标准答案:D6. 采用带头结点双向链表存储的线性表,在删除一个元素时,需要修改指针()次。
(2分)A.1B.2C.3D.4★检查答案标准答案:B7. 线性表的顺序存储结构是一种()的存储结构。
(2分)A.顺序存取B.随机存取C.索引存取D.Hash存取★检查答案标准答案:B8. 数组a[1..m]采用顺序存储,a[1]和a[m]地址分别为1024和1150,每个元素占2字节,则m是()。
(2分)A.64B.32C.16D.8★检查答案标准答案:A9. 深度为h的二叉树,第h层最多有()个结点。
(2分)A.hB.2h-1C.2h-1D.2h★检查答案标准答案:C10. m个结点的二叉树,其对应的二叉链表共有()个非空链域。
(2分)A.mB.m+1C.2mD.m-1★检查答案标准答案:B11. 下面叙述错误的是()。
(2分)A.顺序表是借助物理单元相邻表示数据元素之间的逻辑关系B.对于空队列进行出队操作过程中发生下溢现象C.有向图的邻接矩阵一定是对称的D.具有相同的叶子个数和具有相同的叶子权值的赫夫曼树不是唯一的★检查答案标准答案:C12. 以下与数据的存储结构无关的术语是()。
(2分)A.循环队列B.双向链表C.哈希表D.数组★检查答案标准答案:D 13. 在一个长度为n的链式栈中出栈实现算法的时间复杂度为()。
中南林业科技大学课程考试试卷
课程名称: 数据结构 ;考试时间:120分钟
一、
判断题(每题1分,共10分,正确划“√”,错误划“×”)
( ) 1、算法分析的两个主要方面是空间复杂度和时间复杂度。
( )2、在线性表的顺序存储结构中,逻辑上相邻的两个元素在物理位置上并不一定紧
邻。
( )3、在对不带头结点的链队列作出队操作时,不会改变头指针的值。
( )4、空串是由空白字符组成的串。
( )5、树的度是树内各结点的度之和。
( ) 6、任一AOE 网中至少有一条关键路径,且是从源点到汇点的路径中最长的一条。
( )7、若一个图的邻接矩阵为对称矩阵,则该图必为无向图。
( )8、任何AOV 网拓扑排序的结果都是唯一的。
( )9、在哈希表中,若装填因子越大,则发生冲突的机会越少。
( )10、直接插入排序的时间复杂度为O (n )。
二、填空题(每题2分,共20分)
1、数据的逻辑结构可形式化地用一个二元组B=(K ,R )来表示,其中K 是 , R 是 。
2、在一个长度为n 的向量中删除第i (1≤i ≤n )个元素时,需向前移动 个元素。
3、用下标0开始的N 元数组实现循环队列时,为实现下标变量m 加1后在数组有效下标范围内循环,可采用的表达式是:m =____________________。
4、从一个栈顶指针为HS 的非空链栈中删除结点并不需要返回栈顶结点的值和回收结点时,应执行 操作。
5、在无向网G 的邻接矩阵A 中,若A[i][j]等于100,则A[j][i]等于 。
软件工程 专业班级 软件工程 专业班级 1、2,程 专业班级 1、2,3,4
装订线(答题不得超过此线)
6、遍历图的基本方法有优先搜索和深度优先搜索。
7、有序表(05,13,19,21,37,56,64,75,80,88,92)中,折半查找56时,其关键码的比较次数为。
8、直接选择排序是不稳定的,它的时间复杂度为。
9、具有n个结点的二叉树,采用二叉链表存储,共有个空链域。
10、在一个图G的邻接表表示中,每个顶点的邻接表中所含的结点数,对于有向图而言等于该顶点的。
三、单项选择题(每题2分,共20分)
1、算法分析的目的是()。
A. 找出数据结构的合理性
B. 研究算法中的输入和输出的关系
C.分析算法的效率以求改进
D. 分析算法的易懂性和文档性
2、若某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采用()存储方式最节省运算时间。
A.单链表 B. 仅有头指针的单循环链表
C . 双链表
D . 仅有尾指针的单循环链表
3、一个栈的入栈序列是1,2,3,4,5,则下列序列中不可能的出栈序列是( )
A. 2,3,4,1,5
B. 5,4,1,3,2
C. 2,3,1,4,5
D. 1,5,4,3,2
4、队列操作的原则是( )。
A. 先进先出
B. 后进先出
C. 只能进行插入
D. 只能进行删除
5、假定在一棵二叉树中,双分支结点数为15,单分支结点数为30个,则叶子结点数为( )个。
A.15 B. 16 C. 17 D.47
6、由带权为9,2,5,7的四个叶子结点构造一棵哈夫曼树,该树的带权路径长度为( )。
A. 23
B. 37
C. 46
D. 44
7、n个顶点的强连通图至少有( )条边。
A. n
B. n-1
C. n+1
D. n(n-1)
8、采用邻接表存储的图的广度优先遍历类似于二叉树的( )。
A.按层次遍历 B. 中序遍历 C. 后序遍历 D. 先序遍历
9、10个元素的有序表,等概率条件下折半查找成功的平均查找长度是()。
A.2.9 B. 3 C. 4.5 D. 5.0
10、若数据表中每个元素已距其最终位置不远时,则采用()算法进行排序最省时间。
A.堆排序 B. 选择排序 C. 快速排序 D. 插入排序
四、简答题(共30分)
1、在《数据结构》课程中,你学习了哪些算法?请至少列举10个算法名称。
(5分)
2、指定Hash函数H(k)=3*kmod11及线性探测开放地址法处理冲突,试在0~10的散列空间中对关键字序列(22,41,53,46,30,13,01,67)构造哈希表,并求在等概率下查找成功的平均查找长度。
(6分)
3、下列算法的功能是求带头结点的单链表的表长,请完善。
(3分)
int count(LinkList head)
{ ; length=0;
while ( p!=NULL )
{ length++ ; ; }
;
}
4、有7个顶点(v1,v2,v3,v4,v5,v6,v7)的有向图
(1)画出该有向图(2分)
(2)画出邻接表(2分)
(3)写出从v1出发的深度优先遍历和广度优先遍历序列(4分)
5、设文件中各记录的关键码为{49,38,65,97,76,13,27}。
欲用快速排序算法将其按关键
码从小到大排序。
请写出每一趟的排序结果。
(4分)
6、阅读下列算法,并回答问题(4分)
(1)Q,,Q1和Q2都是队列结构,设队列Q=(1,0,-5,2,-4,-8,9),其中1为队头元素,写出执行f31(&Q,&Q1,&Q2)之后Q,Q1和Q2 的状态;
(2)简述算法f31的功能。
(注InitQueue,EnQueue,DeQueue和QueueEmpty分别是队列初始化、入队、出队和队空的操作) Void f31(Queue *Q,Queue *Q1,Queue *Q2) {
int e;
InitQueue(Q1);
InitQueue(Q2);
While(!QueueEmpty(Q)) {
E=DeQueue(Q);
if (e>=0) EnQueue(Q1,e);
else EnQueue(Q2,e);
}
}
五、设二叉树以二叉链表形式存储,请编写一个求叶子结点总数的算法。
(10分)
六、设单链表L中的结点按data域数值递减排列,试设计一个算法将L中的结点按data域数值递增排列,要求算法的时间复杂性为O(n)。
(10分)。