07-11杭电851数据结构真题

合集下载

杭电数据结构java版期末重点题目

杭电数据结构java版期末重点题目

5、算法设计题:一个线性表中的元素为正整 数或负整数。设计一个算法,将正整数和 负整数分开,使线性表前一半为负整数, 后一半为正整数。不要求对这些元素排序, 但要求尽量减少交换次数。
5、参考答案: 本题的算法思想是:先设置好上、下界,然后分别从线性表两端查找 正数和负数,找到后进行交换,直到上、下界相遇。 void example ( datatype A [n] ) { i = 1, j = n ; /* i , j为左右边界 */ while ( i < j ) { while ( ( i < j ) && ( A[ i ] < 0 ) ) i++ ; /* 在左边界找正数 */ while ( (i < j ) && ( A[ j ] > 0 )) j - - ; /* 在右边界找负数 */ if ( i < j) { temp = A[ i ]; A[ i ] = A[ j ]; A[ j ] = A [temp ] ; /*交换两个元素 的值 */ i++ ; j - -; } } }
对于有向无环图,写出它的四个不同的拓 扑有序序列。
已知非空二叉树采用顺序存储结构,树中 结点的数据信息依次存放在一个一维数组 中,即 求该二叉树的中序列遍历序列。
1、已知一棵具有n个结点的完全二叉树,自行定 义该树的某种存储方式,根据该存储方式,设计 一个算法,求解给定结点的双亲结点和左右孩子 结点。 2、对于一组数据元素的给定表,根据数据元素在 表中的次序,设计一算法构造一棵二叉排序树 了解更多关于期末考试信息,请关注新浪微博 听刘遵义讲故事 /u/2519554322
现有某二叉树,按先根遍历的序列为 ABDEFCGH,按中根遍历的序列为 DEFBGHCA,试画出此二叉树。

2022年杭州电子科技大学计算机科学与技术专业《数据结构与算法》科目期末试卷A(有答案)

2022年杭州电子科技大学计算机科学与技术专业《数据结构与算法》科目期末试卷A(有答案)

2022年杭州电子科技大学计算机科学与技术专业《数据结构与算法》科目期末试卷A(有答案)一、选择题1、下述文件中适合于磁带存储的是()。

A.顺序文件B.索引文件C.哈希文件D.多关键字文件2、下列说法不正确的是()。

A.图的遍历是从给定的源点出发每个顶点仅被访问一次B.遍历的基本方法有两种:深度遍历和广度遍历C.图的深度遍历不适用于有向图D.图的深度遍历是一个递归过程3、算法的计算量的大小称为计算的()。

A.效率B.复杂性C.现实性D.难度4、用不带头结点的单链表存储队列,其队头指针指向队头结点,队尾指针指向队尾结点,则在进行出队操作时()。

A.仅修改队头指针B.仅修改队尾指针C.队头、队尾指针都可能要修改D.队头、队尾指针都要修改5、已知有向图G=(V,E),其中V={V1,V2,V3,V4,V5,V6,V7}, E={<V1,V2>,<V1,V3>,<V1,V4>,<V2,V5>,<V3,V5>, <V3,V6>,<V4,V6>,<V5,V7>,<V6,V7>},G的拓扑序列是()。

A.V1,V3,V4,V6,V2,V5,V7B.V1,V3,V2,V6,V4,V5,V7C.V1,V3,V5,V2,V6,V7D.V1,V2,V5,V3,V4,V6,V76、排序过程中,对尚未确定最终位置的所有元素进行一遍处理称为一趟排序。

下列排序方法中,每一趟排序结束时都至少能够确定一个元素最终位置的方法是()。

Ⅰ.简单选择排序Ⅱ.希尔排序Ⅲ.快速排序Ⅳ.堆排Ⅴ.二路归并排序A.仅Ⅰ、Ⅲ、Ⅳ B.仅Ⅰ、Ⅱ、Ⅲ C.仅Ⅱ、Ⅲ、Ⅳ D.仅Ⅲ、Ⅳ、Ⅴ7、循环队列放在一维数组A中,end1指向队头元素,end2指向队尾元素的后一个位置。

假设队列两端均可进行入队和出队操作,队列中最多能容纳M-1个元素。

初始时为空,下列判断队空和队满的条件中,正确的是()。

杭州电子科技大学2011数据结构期末试卷

杭州电子科技大学2011数据结构期末试卷

杭州电子科技大学2011数据结构期末试卷杭州电子科技大学学生考试卷( A )卷考试课程数据结构考试日期 2011 年月日成绩课程号教师号任课教师姓名考生姓名学号(8位)年级专业一.判断题:(每小题2分,共20分)1.链栈的初始化是指开辟足够多的结点,然后置栈顶指针为NULL。

()2.数据的物理结构是指数据在计算机内的实际存储形式。

()3.线性表采用链表存储时,查找第i个元素的时间与i的值无关。

()4.将一棵树转成二叉树,根结点没有左子树。

()5.广义表的取表尾运算,其结果通常是个表,但有时也可是个原子。

()6.完全二叉树的某结点若无左孩子,则它必是叶结点。

()7.用邻接矩阵表示图时,矩阵元素的个数与边的条数有关。

()8.图的深度优先遍历序列和广度优先遍历序列不是唯一的。

()9.用简单选择排序算法,只需一趟扫描即可选出键值最大(或最小)的元素。

()10. 采用线性探测法处理散列时的冲突,当从哈希表删除一个记录时,不应将这个记录的所在位置置空,因为这会影响以后的查找。

()二.选择题:(每小题2分,共18分)1.设有一个10阶的对称矩阵A,采用压缩存储方式,以行序为主存储,a11为第一元素,其存储地址为1,每个元素占一个地址空间,则a85的地址为()。

A. 13B. 33C. 18D. 402.下面关于线性表的叙述中,错误的是哪一个?()A.线性表采用顺序存储,必须占用一片连续的存储单元。

B.线性表采用顺序存储,便于进行插入和删除操作。

C.线性表采用链接存储,不必占用一片连续的存储单元。

D.线性表采用链接存储,便于插入和删除操作。

3.循环队列存储在数组A[0..m]中,则入队时的操作为()。

A. rear=rear+1B. rear=(rear+1) mod (m-1)C. rear=(rear+1) mod mD. rear=(rear+1)mod(m+1)4.对于深度为K的满二叉树(结点编号从1开始,根结点的层数为1),其第K层上最后1个结点的编号为 ( )。

电子科技大学期末数据结构试题及答案

电子科技大学期末数据结构试题及答案

数据结构试卷(一)一、单选题(每题 2 分,共20分)1.栈和队列的共同特点是( A )。

A.只允许在端点处插入和删除元素B.都是先进后出C.都是先进先出D.没有共同点2.用链接方式存储的队列,在进行插入运算时( D ).A. 仅修改头指针B. 头、尾指针都要修改C. 仅修改尾指针D.头、尾指针可能都要修改3.以下数据结构中哪一个是非线性结构?( D )A. 队列B. 栈C. 线性表D. 二叉树4.设有一个二维数组A[m][n],假设A[0][0]存放位置在644(10),A[2][2]存放位置在676(10),每个元素占一个空间,问A[3][3](10)存放在什么位置?脚注(10)表示用10进制表示。

CA.688 B.678 C.692D.6965.树最适合用来表示( C )。

A.有序数据元素B.无序数据元素C.元素之间具有分支层次关系的数据D.元素之间无联系的数据6.二叉树的第k层的结点数最多为( D ).A.2k-1 B.2K+1 C.2K-1 D. 2k-17.若有18个元素的有序表存放在一维数组A[19]中,第一个元素放A[1]中,现进行二分查找,则查找A[3]的比较序列的下标依次为( D )A. 1,2,3B. 9,5,2,3C. 9,5,3D. 9,4,2,38.对n个记录的文件进行快速排序,所需要的辅助存储空间大致为CA. 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的元素有(D)个A.1 B.2 C.3 D.410.设有6个结点的无向图,该图至少应有( A )条边才能确保是一个连通图。

A.5B.6C.7D.8二、填空题(每空1分,共26分)1.通常从四个方面评价算法的质量:正确性易读性强壮性和_高效率。

2.一个算法的时间复杂度为(n3+n2log2n+14n)/n2,其数量级表示为___0(n)_____。

杭电数据结构考研真题

杭电数据结构考研真题

杭电数据结构考研真题杭电数据结构考研真题数据结构是计算机科学中非常重要的一门课程,它涉及到数据的组织、存储和管理方法。

对于计算机专业的学生来说,数据结构考试是一个非常关键的环节。

本文将讨论杭电数据结构考研真题,以帮助考生更好地准备考试。

首先,我们来看一道典型的杭电数据结构考研真题:题目:给定一个n个元素的整数序列,求该序列的最长递增子序列的长度。

这道题目是经典的动态规划问题。

我们可以使用动态规划的思想来解决。

首先定义一个数组dp,dp[i]表示以第i个元素结尾的最长递增子序列的长度。

然后我们可以通过遍历序列中的每个元素,来更新dp数组。

具体的算法如下:1. 初始化dp数组,将所有元素的值都初始化为1。

2. 遍历序列中的每个元素i,从第一个元素开始。

3. 对于每个元素i,再遍历之前的元素j,从第一个元素到i-1。

4. 如果序列中的第j个元素小于第i个元素,并且dp[j]+1大于dp[i],则更新dp[i]的值为dp[j]+1。

5. 最后,遍历整个dp数组,找到最大的值,即为最长递增子序列的长度。

通过以上算法,我们可以求解出给定序列的最长递增子序列的长度。

这道题目虽然简单,但是涉及到了动态规划的思想和算法实现,对于考生来说是一道很好的练习题。

除了这道题目,杭电数据结构考研真题还涉及到其他一些重要的知识点,如树、图、排序算法等。

在准备考试的过程中,考生应该重点关注这些知识点,并进行系统的学习和复习。

此外,考生还可以通过参加模拟考试来提高自己的应试能力。

模拟考试可以帮助考生了解真实考试的环境和要求,同时也可以帮助考生找出自己的不足之处,有针对性地进行复习和提高。

总之,杭电数据结构考研真题是考生备战考试的重要素材。

通过对这些真题的学习和分析,考生可以更好地了解考试的要求和难点,提高自己的解题能力和应试技巧。

希望本文对考生们的备考有所帮助,祝愿大家取得优异的成绩!。

851数据结构

851数据结构

杭州电子科技大学全国硕士研究生入学考试业务课考试大纲考试科目名称:数据结构科目代码:851一、数据结构的一般概念1.掌握数据结构的基本概念和术语。

2.了解抽象数据类型的概念。

3.掌握算法的特性,算法的描述和算法的分析。

二、线性表1.理解线性表的逻辑结构。

2.掌握线性表的顺序存贮结构和链式存贮结构;掌握线性表基本操作的实现。

3.了解线性表的应用。

三、其他线性结构1.掌握栈的定义、栈的存贮结构及基本操作的实现。

2.理解用栈实现表达式的求值,递归过程及其实现。

3.掌握队列的定义、存贮结构及基本操作的实现4.理解串的逻辑定义及其基本操作;理解串的存贮结构。

5.理解数组的定义、数组的顺序存贮结构及矩阵的存贮压缩。

6.理解广义表的定义及存贮结构。

四、树和二叉树1.掌握树型结构的定义。

2.掌握二叉树的定义、性质及各种存贮结构。

3.掌握遍历二叉树、线索二叉树及其他基本操作。

4.掌握树、森林与二叉树的相互转换;理解树的遍历;掌握哈夫曼树及其应用。

五、图1.掌握图的定义和术语。

2.掌握图的存贮结构;理解图的基本操作。

3.掌握图的遍历算法;了解利用图的遍历解决图的应用问题。

4.理解图的有关应用:求最小生成树、求最短路径、拓扑排序及关键路径等算法的基本思想。

六、查找1.掌握静态查找表。

2.掌握二叉排序树和平衡二叉树。

3.理解B-树;了解B+树。

4.掌握哈希表。

5.掌握各种查找方法的时间性能分析。

七、内部排序1.掌握直接插入排序、希尔排序、冒泡排序、快速排序、简单选择排序、堆排序、归并排序;理解基数排序。

2.学会各种内部排序方法的比较(时间复杂度、空间复杂度、稳定性)。

参考书目:1. 《数据结构》(C语言版),严蔚敏吴伟民编著,清华大学出版社,2006.32. 《数据结构实用教程》(C++版),万健主编,电子工业出版社,2011.1。

电子科技大学期末数据结构试题及答案

电子科技大学期末数据结构试题及答案

数据结构试卷(一)一、单选题(每题 2 分,共20分)1.栈和队列的共同特点是( A )。

A.只允许在端点处插入和删除元素B.都是先进后出C.都是先进先出D.没有共同点2.用链接方式存储的队列,在进行插入运算时( D ).A. 仅修改头指针B. 头、尾指针都要修改C. 仅修改尾指针D.头、尾指针可能都要修改3.以下数据结构中哪一个是非线性结构?( D )A. 队列B. 栈C. 线性表D. 二叉树4.设有一个二维数组A[m][n],假设A[0][0]存放位置在644(10),A[2][2]存放位置在676(10),每个元素占一个空间,问A[3][3](10)存放在什么位置?脚注(10)表示用10进制表示。

CA.688 B.678 C.692D.6965.树最适合用来表示( C )。

A.有序数据元素B.无序数据元素C.元素之间具有分支层次关系的数据D.元素之间无联系的数据6.二叉树的第k层的结点数最多为( D ).A.2k-1 B.2K+1 C.2K-1 D. 2k-17.若有18个元素的有序表存放在一维数组A[19]中,第一个元素放A[1]中,现进行二分查找,则查找A[3]的比较序列的下标依次为( D )A. 1,2,3B. 9,5,2,3C. 9,5,3D. 9,4,2,38.对n个记录的文件进行快速排序,所需要的辅助存储空间大致为CA. 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的元素有(D)个A.1 B.2 C.3 D.410.设有6个结点的无向图,该图至少应有( A )条边才能确保是一个连通图。

A.5B.6C.7D.8二、填空题(每空1分,共26分)1.通常从四个方面评价算法的质量:正确性易读性强壮性和_高效率。

2.一个算法的时间复杂度为(n3+n2log2n+14n)/n2,其数量级表示为___0(n)_____。

杭电 数据结构 期末复习卷及答案

杭电  数据结构  期末复习卷及答案

1. 数据结构可用三元式表示(D,S,P)。

其中:D是数据对象,S是D上的关系集,P是对D的基本操作集。

×3. 队列是数据对象特定的线性表。

×4. 二叉树是一棵结点的度最大为二的树。

×7.一棵无向连通图的生成树是其极大的连通子图。

×8.二叉排序树的查找长度至多为log2n。

×10.对于目前所知的排序方法,快速排序具有最好的平均性能。

√12. 二维数组是其数据元素为线性表的线性表。

√14. 折半查找不适用于有序链表的查找。

√15. 完全二叉树必定是平衡二叉树。

Right 中序二叉树的优点是便于在中序下查找直接前驱结点和直接后继结点。

√18. 平均查找长度与记录的查找概率有关。

√19. 广义表的表头和表尾都有可能是原子或广义表。

×1. 若广义表LS满足GetHead(LS)==GetTail(LS),则LS为( b )。

A. ( )B. (( ))C. (( ),( ))D. (( ),( ),( ))5. 对二叉排序树按(c)可得到有序序列。

a:层次遍历 b:前序遍历 c:中序遍历 d:后序遍历8.关键路径是指在只有一个源点和一个汇点的有向无环网中源点至汇点(c)的路径。

a:弧的数目最多 b:弧的数目最少 c:权值之和最大 d:权值之和最小9. 哈希表的查找效率取决于(d)。

a: 哈希函数 b:处理冲突的方法。

c:哈希表的装填因子d:以上都是10.从逻辑上可以把数据结构分成( c )。

c: 线性结构和非线性结构13.当待排序序列的关键字次序为倒序时,若需为之进行正序排序,下列方案中( d )为佳。

a: 起泡排序 b: 快速排序c: 直接插入排序 d: 简单选择排序14.若从二叉树的根结点到其它任一结点的路径上所经过的结点序列按其关键字递增有序,则该二叉树是( c )。

a: 二叉排序树 b: 赫夫曼树 c: 堆 d: 平衡二叉树15.下图所有可能的拓扑序列有( b )种。

电子科技大学期末数据结构试题及答案

电子科技大学期末数据结构试题及答案

___________________ 、_______________________ 和 __________________________ 。
10. 向一棵 B_ 树插入元素的过程中,若最终引起树根结点的分裂,则新树比原树的高度 ___________ 。
11. 在堆排序的过程中, 对任一分支结点进行筛运算的时间复杂度为 ________,整个堆排序 过程的时间复杂度为 ________。
数据结构试卷(一)
一、单选题(每题 2 分,共 20 分)
1. 栈和队列的共同特点是 ( A )。 A. 只允许在端点处插入和删除元素 B. 都是先进后出
C.都是先进先出 D. 没有共同点
2. 用链接方式存储的队列,在进行插入运算时 ( D ).
A.
仅修改头指针
B.
头、尾指针都要修改
C.
仅修改尾指针
A.5
B.6
C.7
D.8
二、填空题(每空 1 分,共 26 分)
1. 通常从四个方面评价算法的质量: 正确性 易读性 强壮性 和 _高效率 。 2. 一个算法的时间复杂度为 (n3+n2log 2n+14n)/n2,其数量级表示为 ___0(n)_____。
3. 假定一棵树的广义表表示为 A ( C, D (E, F, G), H( I, J)),则树中所含的结点数
3.设顺序循环队列 Q[0 :M-1] 的头指针和尾指针分别为 F 和 R,头指针 F 总是指向队头元素 的前一位置,尾指针 R 总是指向队尾元素的当前位置,则该循环队列中的元素个数为
( )。 (A) R-F
(B) F-R
(C) (R-F+M) % M (D) (F-R+M) % M

(完整word版)杭电数据结构复习题(含详解)

(完整word版)杭电数据结构复习题(含详解)

一.是非题(共分,每题分)1。

数据结构可用三元式表示(D,S,P)。

其中:D是数据对象,S是D上的关系,P是对D的基本操作集。

(f)2 简单地说,数据结构是带有结构的数据元素的集合。

(t)3 判断带头结点的非空循环单链表(头指针为L)中指针p所指结点是最后一个元素结点的条件是:p—〉next==L。

(t)4 线性表的链式存储结构具有可直接存取表中任一元素的优点。

(f)5 线性表的顺序存储结构优于链式存储结构。

(f)6。

在单链表P指针所指结点之后插入S结点的操作是:P->next= S ;S-〉next = P—〉next;。

(f)7 对于插入、删除而言,线性表的链式存储优于顺序存储。

(t)8. 顺序存储方式的优点是存储密度大,且插入、删除运算效率高.(f)9。

栈和队列是操作上受限制的线性表。

(t)10. 队列是与线性表完全不同的一种数据结构。

(f)11. 队列是一种操作受限的线性表,凡对数据元素的操作仅限一端进行。

(f)12. 栈和队列也是线性表。

如果需要,可对它们中的任一元素进行操作。

(f)13。

栈是限定仅在表头进行插入和表尾进行删除运算的线性表.(f)14. 二叉树中每个结点有两个子结点,而对一般的树,则无此限制,所以,二叉树是树的特殊情形。

(f)15 二叉树是一棵结点的度最大为二的树。

(f)16 赫夫曼树中结点个数一定是奇数。

(t)17 在二叉树的中序遍历序列中,任意一个结点均处在其左孩子结点的后面。

(t)18 假设B是一棵树,B′是对应的二叉树.则B的后根遍历相当于B′的后序遍历 .(f)19. 通常,二叉树的第i层上有2i—1个结点.(f)20. 中序线索二叉树的优点是便于在中序下查找直接前驱结点和直接后继结点。

(t)21 二叉树的先序遍历序列中,任意一个结点均处在其孩子结点的前面。

(t)22 由树结点的先根序列和后根序列可以唯一地确定一棵树。

(t)23 邻接多重表可以用以表示无向图,也可用以表示有向图。

杭电《数据结构》习题答案

杭电《数据结构》习题答案

8.9.10. A)ACFKDBG C)KCFAGDBB)GDBFKCA D)ABCDFKG欲得到二叉搜索树(BST)各结点值的递增序列,试问应该采用何种遍历方法(A)先序遍历C)后序遍历B)中序遍历D)层次遍历与数据元素本身的形式、内容、相对位置、个数无关的是数据的(A)存储结构C)逻辑结构B)存储形式D)运算实现有一棵非空的二叉树(第0层为根结点),其第i层上至多有(Ai1)个节点《软件技术基础》之数据结构习题)选择题1. 下面关于线性表的叙述中,正确的是(D )A)线性表的每个元素都有一个直接前驱和直接后继B)线性表中至少要有一个元素C)线性表中的元素必须按递增或递减的顺序排列D)除第一个元素和最后一个元素外,其余每个元素有且仅有一个直接前驱和直接后继2. 下面关于线性表的叙述中,错误的是(B )A)采用顺序存储的线性表必须占用一片连续的存储单元B)采用顺序存储的线性表便于进行插入和删除操作C)采用链接存储的线性表,不必占用一片连续的存储单元D)采用链接存储的线性表,便于进行插入和删除操作3. 设有栈S和队列Q,初始状态皆为空,元素a i、a?、a3、a4、a5、a6依次入栈,出栈的元素依次进入队列Q,若6个元素的出栈序列为:a2、a4、出、比、氏、a i,则栈的容量至少是(C )A) 6 C) 3B) 4 D) 24. 设在栈中,由顶向下已存放元素c、b、a,在第4个元素d入栈前,栈中元素可以出栈,试问d入栈后,不可能的出栈序列是( C )A) d c b a C) c a d bB) c b d a D) c d b a5. 在一棵二叉树的先序遍历、中序遍历、后序遍历序列中,所有叶节点的先后顺序(B)A)都不相同C)先序和中序相同,后序不同B)完全相同D)中序和后序相同,先序不同6. 设二叉树根结点的层次为0,—棵高度为h的满二叉树的结点个数是(C )A)2h C) 2h-1h-1 h+ 1 AB) 2 D) 2 -17. 已知一棵二叉树的前序序列为ABDGCFK,中序序列为DGBAFCK,则结点的后序序列为(B )11.双向链表结点结构如下:LLi nkData RL ink其中:LLink 是指向前趋结点的指针域,Data 是存放数据元素的数据域,RLink 是指向后继结点的指针域。

电子科技大学网络教育-数据结构(专科)试题及答案(1)

电子科技大学网络教育-数据结构(专科)试题及答案(1)

电子科技大学网络教育-数据结构(专科)试题及答案(1)一、单选,共30题/每题2.5分/共75.0分:1、计算机算法必须五个特性,即输入、输出和()。

A、确定性、有穷性和稳定性B、可行性、可移植性和可扩充性C、可行性、确定性和有穷性D、易读性、稳定性和安全性得分:2.52、关于冒泡排序的说法正确的有()①.属于交换排序②.在整个排序过程中,最多执行n-1遍③.属于选择排序④.在某一趟排序过程没有气泡交换,则可终止该算法A、①②B、②③④C、①②④D、②③得分:2.53、下面程序段的时间复杂度是()。

for(i=0;i<m;i++)for(j=0;j<n;j++)a[i][j]=i*j;A、O(m+n)B、O(n2)C、O(m*n)D、O(m2)得分:2.54、设n、m为一棵二叉树上的两个结点,在中根遍历时,n在m之前的条件是()。

A、n是m的祖先B、n是m的子孙C、n在m左方D、n在m右方得分:2.55、假定一个链栈的栈顶指针用其所长top表示,当p所指向的节点进栈时,执行的操作是()。

A、top=p->p;p->next=top;B、p->next=top->next;top->next =p;C、p->next=top;top=top->next;D、p->next=top;top=p;得分:2.56、在决定选取何种存储结构时,一般不考虑()。

A、所使用编辑语言实现这种的便利性B、结点个数C、对数据的运算D、各结构的值得分:2.57、若X是二叉中序线索树中一个有左孩子的结点,且X不为根,则X的前驱为()。

A、X的双亲B、X的左子树中最右叶结点C、X的左子树中最右结点D、X的右子树中最左的结点得分:2.58、设栈S和队列Q的初始状态为空,元素e1、e2、e3、e4、e5和e6依次进入栈S,一个元素出栈后即进入Q,若6个元素出队的序列是e2、e4、e3、e6、e5和e1,则栈S的容量至少应该是()。

杭电数据结构期末样卷

杭电数据结构期末样卷

第1页
共2页
} else
; } }
四.简答题(每题 5 分共 25 分)
1.将图示森林转换为二叉树。
a
d
h
b
c
e
f
i
j
g
k
l
m
2.已知 Hash 函数为 H(K)=K mod 13 ,哈希表长为 15,用二次探测再散列处理冲突, 给出关键字(23,34,56,24,75,12,49, 52,36,92,06,55)在散列表中的分布,并求 在等概率情况下查找成功的平均查找长度。
2. 在有 n 个结点的二叉树的二叉链表表示中,空指针数 ( )。
a.不定
b.n+1
c.n
d.n-1
3. 下列二叉树中,( )可用于实现符号不等长高效编码。
a.最优二叉树
b.次优查找树
c.二叉平衡树 ••d.二叉排序树
4. 下列查找方法中,( )适用于查找有序单链表。
a.顺序查找
b.二分查找
c.分块查找
a. log 2 m e. ┌ m/2 ┐
b. └ log2 m ┘ +1 f. m
c. m/2 d .┌ m/2 ┐ -1
8.已知一组待排序的记录关键字初始排列如下:56,34,58,26,79,52,64,37,28,84,57。 下列选择中( )是快速排序一趟排序的结果。 ( )是希尔排序(初始步长为 4)一趟排序的结果。 ( )是起泡排序一趟排序的结果。 ( )是初始堆(大堆顶)。 a) 84,79,64,37,57,52,58,26,28,34,56。 b) 28,34,57,26,56,52,58,37,79,84,64。 c) 28,34,37,26,52,56,64,79,58,84,57。 d) 52,34,64,84,56,26,37,57,58,28,79。 e) 34,56,26,58,52,64,37,28,79,57,84。 f) 34,56,26,58,52,79,37,64,28,84,57。

杭电[数据结构(c语言版本)]

杭电[数据结构(c语言版本)]

(附:期末复习题及期末样卷)第一章绪论一.基本概念和术语数据结构是一门研究非数值计算的程序设计问题中计算机的操作对象以及它们之间的关系和操作等的学科。

术语:数据、数据元素、数据对象、数据结构、抽象数据类型、算法。

数据结构的形式定义(二元组)数据的逻辑结构:线性结构非线性结构数据的存储结构(物理结构):主要有顺序存储结构链式存储结构抽象数据类型(三元组)算法(5个重要特性)二.算法的时间复杂度和空间复杂度算法的评价:正确性、可读性、健壮性、高效率、低存储量第二章线性表一.线性表的定义线性结构的特点二.线性表的存储结构1.顺序存储结构(顺序表)插入/删除元素时,需移动元素2.链式存储结构(链表,分为单向链表、双向链表)带头结点的链表和不带头结点的链表;循环链表;链表空与非空的情况。

3.两种存储结构的优缺点比较,各适合那些场合。

三.线性表操作的实现(算法描述)插入元素、删除元素、查找、判表是否满足某种特性例:判断题:1. 线性表的逻辑顺序与存储顺序总是一致的。

F2. 线性结构的基本特征是:每个结点有且仅有一个直接前驱和一个直接后继。

F3. 线性表的链式存储结构优于顺序存储结构。

F选择题:线性表L在( B )情况下适于使用链表结构实现。

A. 不需修改L的结构B. 需不断对L进行删除、插入C. 需经常修改L中结点值D. L中含有大量结点填空题:1. 对于顺序表中,在第i个元素前插入一个元素需移动n-i+1个元素,要删除第i个元素,需移动n-i个元素。

2. 在双向循环链表中某结点(由指针p指示)之后插入s指针所指结点的操作是:;;;;。

第三章栈和队列一.栈1.栈的定义2.栈的存储结构:顺序存储结构链式存储结构3.栈的应用:二叉树的先序、中序、后序遍历算法图的深度优先遍历算法(将递归算法改写为非递归算法可借助栈来完成;递归算法的执行需用栈来实现)二.队列1.队列的定义2.队列的存储结构:顺序存储结构(循环队列),链式存储结构3.队列的应用:二叉树层序遍历图的广度优先遍历算法4.循环队列:·队空、队满的判断条件·求队列的长度·循环队列通常用front和rear来指示队头和队尾的位置来表示一个队列;如果用front指示队头,用length表示队列的长度,也可以表示一个队列。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档