吉林大学数据结构练习题
数据结构习题课
![数据结构习题课](https://img.taocdn.com/s3/m/13ba5bc8dd3383c4ba4cd23a.png)
8-9
假设按下述递归方法进行顺序表的查找:若
表长n ≤10,则进行顺序查找,否则进行折 半查找。试画出对表长n =50的顺序表进行上
述查找时,描述该查找的判定树,并求出在 等概率情况下查找成功的平均查找长度。
参考答案
a12
1 a6 2 6 a2
1-5 7-11
13-17
a25
2
5
a38
3
a18
a6
6
a3
a9
3
a1
a4
9
a7
a11
1
a2
4
7
11
a5
a8 a10
a12
2
5
8 10 12
参考答案 a6
二叉判定树如下: a3
6
a9
3
a1
a4
9
a7
a11
1
a2
4
7
11
a5
a8 a10
a12
2
5
8 10 12
ASLUNSUCC = En/(n+1) = (3*3+4*10)/13= 49/13
a31 8
a44
1
3
4
8
1
4
26-30
32-37
19-24
39-43
45-50
ASL=(1+2*2+3*4+(4+5+6+7+8)*8+9*3)/50=284/50
8-10
已知下列关键词和它们对应的散列函数值:
key
Zhao Sun
H(key) 6
5
Li Wang Chen Liu Zhang
2022年吉林大学数据科学与大数据技术专业《数据库系统原理》科目期末试卷B(有答案)
![2022年吉林大学数据科学与大数据技术专业《数据库系统原理》科目期末试卷B(有答案)](https://img.taocdn.com/s3/m/6e51f7a4c67da26925c52cc58bd63186bceb92e3.png)
2022年吉林大学数据科学与大数据技术专业《数据库系统原理》科目期末试卷B(有答案)一、填空题1、数据库内的数据是______的,只要有业务发生,数据就会更新,而数据仓库则是______的历史数据,只能定期添加和刷新。
2、以子模式为框架的数据库是______________;以模式为框架的数据库是______________;以物理模式为框架的数据库是______________。
3、视图是一个虚表,它是从______导出的表。
在数据库中,只存放视图的______,不存放视图对应的______。
4、关系模型由______________、______________和______________组成。
5、数据库恢复是将数据库从______状态恢复到______的功能。
6、数据库系统是利用存储在外存上其他地方的______来重建被破坏的数据库。
方法主要有两种:______和______。
7、在SQL Server 2000中,新建了一个SQL Server身份验证模式的登录账户LOG,现希望LOG在数据库服务器上具有全部的操作权限,下述语句是为LOG授权的语句,请补全该语句。
EXEC sp_addsrvrolemember‘LOG’,_____;8、数据仓库主要是供决策分析用的______,所涉及的数据操作主要是______,一般情况下不进行。
9、数据库管理系统的主要功能有______________、______________、数据库的运行管理以及数据库的建立和维护等4个方面。
10、在SQL语言中,为了数据库的安全性,设置了对数据的存取进行控制的语句,对用户授权使用____________语句,收回所授的权限使用____________语句。
二、判断题11、关系中任何一列的属性取值是不可再分的数据项,可取自不同域中的数据。
()12、有出现并发操作时,才有可能出现死锁。
()13、在第一个事务以S锁方式读数据R时,第二个事务可以进行对数据R加S锁并写数据的操作。
吉大19年11月《数据结构》作业考核考试试题满分答案
![吉大19年11月《数据结构》作业考核考试试题满分答案](https://img.taocdn.com/s3/m/9baf82bd28ea81c758f57896.png)
吉大 19年11月《数据结构》作业考核试题总分:100 分一、单选题共 10 题,40 分 1 4 分带头结点的单链表 head 为空的判断条件是()。
Ahead=NULL Bhead->next=NULL Chead->next=head Dhead!=NULL 学生答案:B 2 4 分在一个单链表中,已知 q 所指结点是 p 所指结点的直接前趋,若在 p,q 之间插入s 结点,这执行()操作。
As->next=p->next;p->next=s Bq->next=s;s->next=p Cp->next=s->next;s->next=p; Dp->next=s;s->next=q; 学生答案:B 3 4 分线性表是具有 n 个()的有限序列 A 表元素 B 字符 C 数据元素 D 数据项学生答案:C 4 4 分在单链表中,删除p 所指结点的直接后继的操作是( ) Ap->next=p->next->next; Bp=p->next;p->next=p->next->next; Cp->next=p->next; Dp=p->next->next;学生答案:A 5 4 分任何一颗二叉树的叶结点在其先根、中根、后跟遍历序列中的相对位置( )。
A 肯定发生变化 B 有时发生变化 C 肯定不发生变化 D 无法确定学生答案:C 64 分在无向图中,所有顶点的度数之和是所有边数的( )倍。
A0.5 B1 C2 D4 学生答案:C 7 4 分单链表中,增加头结点的目的是为了( )。
A 方便运算的实现 B 用于标识单链表 C 使单链表中至少有一个结点D 用于标识起始结点的位置学生答案:A 8 4 分链栈与顺序栈相比,有一个比较明显得优点是( ) A 通常不会出现栈满的情况 B 通常不会出现栈空的情况 C 插入操作更加方便 D 删除操作更加方便学生答案:A 94 分深度为 6 的二叉树最多有( )个结点。
吉林大学数据结构练习题
![吉林大学数据结构练习题](https://img.taocdn.com/s3/m/8a47830a7cd184254b353550.png)
数据结构复习题一、单项选择题1. 不带头结点的单链表head为空的判断条件是( )。
A.head==NULLB.head->next==NULLC.head->next==headD.head!=NULL2. 链表不具有的特点是( )。
A.可随机访问任一元素B.插入删除不需要移动元素C.不必事先估计存储空间D.所需空间与线性表长度成正比3. 单链表中,增加头结点的目的是为了()。
A.方便运算的实现B.用于标识单链表C.使单链表中至少有一个结点D.用于标识起始点的位置4. 设输入序列为A,B,C,D,借助一个栈不可以得到的输出序列是( )。
A.A,B,C,DB.A,C,D,BC.D,C,B,AD.D,A,B,C5. 栈和队列都是()。
A.顺序存储的线性表B.链式存储的线性表C.限制存取点的线性结构D.限制存取点的非线性结构6. 串的长度是()。
A.串中不同字符的个数B. 串中不同字母的个数C.串中所含字符的个数且字符个数大于0D.串中所含字符的个数7. 栈和队列的主要区别在于()。
A.它们的逻辑结构不一样B.它们的存储结构不一样C.所包含的运算个数不一样D.插入删除运算的限定不一样8. 从具有n个结点的单链表中查找值等于x的结点时,在查找成功的情况下,平均需比较()个结点。
A.nB.n/2C.(n-1)/2D.(n+1)/29. 线性表是具有n个()的有限序列。
A. 表元素B. 字符C. 数据元素D. 信息项10. 某二叉树的前序和后序序列正好相同,则该二叉树一定是()的二叉树。
A. 空或只有一个结点B. 高度等于其结点数C. 任一结点无左孩子D. 任一结点无右孩子11. 在一棵二叉树的二叉链表中,空指针域数等于非空指针域数加()。
A. 2B. 1C. 0D. –112. 下列排序算法中,第一趟排序完毕后,其最大或最小元素一定在其最终位置上的算法是()。
A. 归并排序B. 直接插入排序C. 快速排序D. 冒泡排序13. 深度为n的二叉树中所含叶子结点的个数最多为()个。
2022年吉林大学计算机科学与技术专业《数据结构与算法》科目期末试卷A(有答案)
![2022年吉林大学计算机科学与技术专业《数据结构与算法》科目期末试卷A(有答案)](https://img.taocdn.com/s3/m/cb90e127366baf1ffc4ffe4733687e21af45ff2a.png)
2022年吉林大学计算机科学与技术专业《数据结构与算法》科目期末试卷A(有答案)一、选择题1、用有向无环图描述表达式(A+B)*((A+B)//A),至少需要顶点的数目为()。
A.5B.6C.8D.92、下列排序算法中,占用辅助空间最多的是()。
A.归并排序B.快速排序C.希尔排序D.堆排序3、若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算,则利用()存储方式最节省时间。
A.顺序表B.双链表C.带头结点的双循环链表D.单循环链表4、最大容量为n的循环队列,队尾指针是rear,队头:front,则队空的条件是()。
A.(rear+1)MOD n=frontB.rear=frontC.rear+1=frontD.(rear-1)MOD n=front5、向一个栈顶指针为h的带头结点的链栈中插入指针s所指的结点时,应执行()。
A.h->next=sB.s->next=hC.s->next=h;h->next=sD.s->next=h-next;h->next=s6、循环队列放在一维数组A中,end1指向队头元素,end2指向队尾元素的后一个位置。
假设队列两端均可进行入队和出队操作,队列中最多能容纳M-1个元素。
初始时为空,下列判断队空和队满的条件中,正确的是()。
A.队空:end1==end2;队满:end1==(end2+1)mod MB.队空:end1==end2;队满:end2==(end1+1)mod (M-1)C.队空:end2==(end1+1)mod M;队满:end1==(end2+1) mod MD.队空:end1==(end2+1)mod M;队满:end2==(end1+1) mod (M-1)7、排序过程中,对尚未确定最终位置的所有元素进行一遍处理称为一趟排序。
下列排序方法中,每一趟排序结束时都至少能够确定一个元素最终位置的方法是()。
吉林省专升本数据结构习题及答案——第六章
![吉林省专升本数据结构习题及答案——第六章](https://img.taocdn.com/s3/m/dcc1827c0a1c59eef8c75fbfc77da26924c5965d.png)
吉林省专升本考试数据结构分章习题及参考答案———选择题(第六章)1、在一个有向图中,所有顶点的度入之和等于所有顶点的出度之和的( ) 倍。
A、1/2B、1C、2D、42、一个具有n个顶点的有向图最多有()条边。
A、n×(n-1)/2B、n×(n-1)C、n×(n+1)/2D、n23、在一个具有n个顶点的无向图中,要连通全部顶点至少需要( )条边。
A、nB、n+1C、n-1D、n/24、在一个图中,所有顶点的度数之和等于图的边数的( )A、1/2B、1C、2D、45、为便于判别有向图中是否存在回路,可借助于()。
A、广度优先搜索算法B、最小生成树算法C、最短路径算法D、拓扑排序算法6、在一个有向图中,所有顶点的入度之和等于所有顶点的出度之和的()倍。
A、1/2B、1C、2D、47、对于有n个顶点、e条边且使用邻接表存储的有向图进行广度优先遍历,其算法的时间复杂度是( )。
A、O(n)B、O(e)C、O(n+e)D、O(nxe)8、在有向图G的拓扑序列中,若顶点Vi在顶点Vj之前,则下列情形不可能出现的是()。
A、G中有弧<Vi,Vj>B、G中有一条从Vi到Vj的路径C、G中没有弧<Vi,Vj>D、G中有一条从Vj到Vi的路径9、用邻接表表示图进行深度优先遍历时,通常借助( ) 来实现算法。
A、栈B、队列C、树D、图10、具有n个顶点的有向图最多有( ) 条边。
A、nB、n(n-1)C、n(n+1)D、n211、下面哪一方法可以判断出一个有向图是否有环(回路):A、深度优先遍历B、拓扑排序C、求最短路径D、求关键路径12、3下列关于AOE网的叙述中,不正确的是()。
A、关键活动不按期完成就会影响整个工程的完成时间B、任何一个关键活动提前完成,那么整个工程将会提前完成C、所有的关键活动提前完成,那么整个工程将会提前完成D、某些关键活动提前完成,那么整个工程将会提前完成13、图的BFS生成树的树高比DFS生成树的树高( )A、小B、相等C、小或相等D、大或相等14、任何一个无向连通图的最小生成树。
数据结构习题课3
![数据结构习题课3](https://img.taocdn.com/s3/m/0d98c3ed6f1aff00bed51ec5.png)
A=
50 0 0 0 10 0 20 0 0 000 -30 0 -60 5
A’=
50 10 0 -30 0000 0 20 0 -60 0 00 5
A[0] 0 0
50
A[1] 1 0
10
A[2] 1 2
20
A[3] 3
0
-30
B[0] 0 0
50
B[1] 0 1
10
B[2] 0
3
-30
B[3] 2 1
数据结构习题 第 3 章
吉林大学计算机科学与技术学院 谷方明
3-4
二维数组A有4行8列,下标从0开始,存储A 的起始地址为2000,每个元素用相邻的4个 字节存储,试计算:
存储整个数组一共需要多少个字节。 数组A的最后一个元素的起始地址。 按行存储时,A[2][4]的起始地址。 按列存储时,A[3][2]的起始地址。
0 0 50 0 1 10 0 3 -30 2 1 20
3
TP3[处理三元组表]
3
FOR i ← 0 TO t-1 DO
4
( p←col(A [i]).
5
pos
k←pos[p].
col( B[k]) ← row(A[i]).
row(B[k]) ←col(A[i]).
val(B[k]) ← val(A[i]).
int indexOf(string s,string p) {
if(p==“” && s==“”) return 0; if(s==“”||p==“”) return -1; int slen=s.size(),plen=p.size(),i=0; while(i+plen<=slen){
吉林大学网络教育数据结构练习题B期末考试复习题
![吉林大学网络教育数据结构练习题B期末考试复习题](https://img.taocdn.com/s3/m/4e522e62284ac850ac02425d.png)
数据结构练习题B一、单项选择题1.带头结点的单链表head为空的判断条件是( )。
A.head==NULLB.head->next==NULLC.head->next==headD.head!=NULL2.线性表的长度是指()A.顺序存储方式下数组所占的空间大小B.链式存储方式下所有结点占用的空间大小C.表中的元素个数D.所能存储的最大的结点个数3.设有6000个无序的元素,希望用最快的速度挑选出其中前6个最大的元素,最好选用( )法。
A.冒泡排序B.快速排序C.堆排序D.基数排序4.设输入序列为的1,2,3,4,借助一个栈可以得到的输出序列是( )。
A.1,3,4,2B.3,1,4,2C.4,3,1,2D.4,1,2,35.链栈和顺序栈相比,有一个较明显的优点是( )。
A.通常不会出现栈满的情况B. 通常不会出现栈空的情况C.插入操作更加方便 C.删除操作更加方便6.下列排序算法中,某一趟结束后未必能选出一个元素放其最终位置上的是( )。
A. 堆排序B. 冒泡排序C. 快速排序D. 直接插入排序7.任何一个无向连通图的最小生成树( )。
A. 只有一棵B. 有一棵或多棵C. 一定有多棵D. 可能不存在8.深度为n的二叉树中所含叶子结点的个数最多为()个。
A.2nB.nC.2n-1D.2n-19.在一个有向图中,所有顶点的入度之和等于所有顶点出度之和的( )倍。
A.1/2B. 1C.2D.410.某数组第一个元素的存储位址为200,每个元素的长度为2,则第五个元素的地址是()。
A.210B.208C.200D.220二、填空题1.从逻辑关系上讲,数据结构主要分为两大类:线性结构和。
2.下面程序段中,执行s语句的次数为。
for (int i=1;i<=m;i++)for (int j=1;j<=m;j++)s;3.在n个结点的顺序表中删除一个结点需平均移动个结点。
4.采用二叉链表存储结构,具有n个结点的二叉树一共有个指针域,其中指针域非空。
数据结构 吉林大学考试题库答案
![数据结构 吉林大学考试题库答案](https://img.taocdn.com/s3/m/6576a2c7ad02de80d4d840d6.png)
数据结构单选题:1.线性链表中各结点之间的地址()。
4.连续与否无所谓2 线性表是具有n个( )的有限序列。
3.数据元素3 若长度为n的线性表采用顺序存储结构,在其第i个位置插入一个新元素的算法的时间复杂度为( )。
(1?i ?n+1)3.O(n)4.不带头结点的单链表head为空的判断条件是( )。
1.head==NULL5.线性表的长度是指()3.表中的元素个数6.某数组第一个元素的存储地址为200,每个元素的长度为4,则第五个元素的地址是()。
3.2167.链栈和顺序栈相比,有一个较明显的优点是( )。
1.通常不会出现栈满的情况8 带头结点的单链表head为空的判断条件是( )。
2.head->next==NULL9 在单链表中增加头结点的目的是为了( )。
1.方便运算的实现11 若某链表最常用的操作是在最后一个结点之后插入一个结点和删除最后一个结点,则采用( )存储方式最节省空间。
3.带头结点的双循环链表12.单链表的存储密度()。
3.小于113 非空的循环单链表head的尾结点(由p指针所指)满足( )。
3.p->next==head14 在一个单链表中,已知(*q)结点是(*p)结点的前驱结点,若在(*q)和(*p)之间插入(*s) 结点,则执行( )。
3.q->next=s ; s->next=p ;15 在一个单链表中,若删除(*p)结点的后继结点,则执行( )。
1.p->next=p->next->next ;16 设输入序列为的1,2,3,4,借助一个栈可以得到的输出序列是( )。
1.1,3,4,217.以下叙述正确的是( )。
3.顺序存储的线性表可以随机存取18.设输入序列为的A,B,C,D,借助一个栈不可以得到的输出序列是( )。
4.D,A,B,C19 栈和队列都是()3.限制存取点的线性结构20.设输入序列为1,2,3,4,5,借助一个栈可以得到的输出序列是( )。
吉林省专升本数据结构习题及答案——第二章
![吉林省专升本数据结构习题及答案——第二章](https://img.taocdn.com/s3/m/d16ddaf5988fcc22bcd126fff705cc1755275f3f.png)
吉林省专升本考试数据结构分章习题及参考答案———选择题(第二章)1、将两个各有n个元素的有序表归并成一个有序表,其最少的比较次数是()。
A、nB、2n-1C、2nD、n-12、假设线性表只有四种基本操作,删除第一个元素;删除最后一个元素;在第一个元素前插入新元素;在最后一个元素后插入新元素,则最好使用( )A、只设尾指针的循环单链表。
B、只设尾指针的非循环双链表。
C、只设头指针的循环双链表。
D、同时设置头指针和尾指针的循环单链表。
3、已知一个顺序存储的线性表,设每个结点需要占m个存储单元,若第一个结点的地址为da,则第i个结点的地址为:()A、 da+(i-1)*mB、 da+i*mC、 da-i*mD、 da+(i+1)*m4、线性表是具有n个()的有限序列(n>0)。
A、表元素B、字符C、数据元素D、数据项5、创建一个包括n个结点的有序单链表的时间复杂度是( )。
A、O(1)B、O(n)C、O(n2)D、O(nlog2n)6、从表中任一结点出发,都能扫描整个表的是()。
A、单链表B、顺序表C、循环链表D、静态链表7、在一个单链表中,已知q所指结点是p所指结点的前驱结点,若在q和p之间插入一个结点s,则执行()。
A、s->next=p->next;p->next=s;B、p->next=s->next;s->next=p;C、q->next=s;s->next=p;D、p->next=s;s->next=q;8、以下说法错误的是()。
A、求表长、定位这两种运算在采用顺序存储结构时实现的效率不比采用链式存储结构时实现的效率低B、顺序存储的线性表可以随机存取C、由于顺序存储要求连续的存储区域,所以在存储管理上不够灵活D、线性表的链式存储结构优于顺序存储结构9、在非空线性链表中p指向的结点后面插入一个q指向的结点,应依次执行()A、q->next=p;p->next=q;B、q->next=p->next;p->next=q;C、q->next=p->next;p=q;D、p->next=q;q->next=p10、线性表的链接实现有利于()运算。
数据结构 吉林大学课程机考复习题库及答案
![数据结构 吉林大学课程机考复习题库及答案](https://img.taocdn.com/s3/m/4d79fd616294dd88d1d26b31.png)
1:38.邻接表的存储结构下图的深度优先遍历类似于二叉树(树)的( )。
1.先序遍历
2.中序遍历
3.后序遍历
4.按层遍历
2:44 下列排序算法中,第一趟排序完毕后,其最大或最小元素一定在其最终位置上的算法是( )。
1.归并排序
2.直接插入排序
3.快速排序
4.冒泡排序
3:5.线性表的长度是指()
1.顺序存储方式下数组所占的空间大小
2.链式存储方式下所有结点占用的空间大小
3.表中的元素个数
4.所能存储的最大的结点个数
4:45.若表r在排序前已按元素键值递增顺序排列,采用( )方法比较次数较少。
1.直接插入排序
2.快速排序
3.归并排序
4.选择排序
5:18.设输入序列为的A,B,C,D,借助一个栈不可以得到的输出序列是( )。
1.A,B,C,D
2.A,C,D,B
3. D,C,B,A
4.D,A,B,C
6:11 若某链表最常用的操作是在最后一个结点之后插入一个结点和删除最后一个结点,则采用( )存储方式最节省空间。
1.单链表
2.双链表
3.带头结点的双循环链表
4.单循环链表
7:46 下列四个关键字序列中,( )不是堆。
1. {05,23,16,68,94,72,71,73}
2.{05,16,23,68,94,72,71,73}
3. {05,23,16,73,94,72,71,68}
4.{05,23,16,68,73,71,72,94}。
2022年吉林大学数据科学与大数据技术专业《计算机系统结构》科目期末试卷A(有答案)
![2022年吉林大学数据科学与大数据技术专业《计算机系统结构》科目期末试卷A(有答案)](https://img.taocdn.com/s3/m/5f62d53b5e0e7cd184254b35eefdc8d376ee14f1.png)
2022年吉林大学数据科学与大数据技术专业《计算机系统结构》科目期末试卷A(有答案)一、选择题1、设16个处理器编号分别为0,1,2,...,15用Cube,互联函数时,第10号处理机与第()号处理机相联。
A.11B.8C.14D.22、从计算机系统结构上讲,机器语言程序员所看到的机器属性是()A.计算机软件所要完成的功能B.计算机硬件的全部组成C.编程要用到的硬件组织D.计算机各部件的硬件实现。
3、下列说法中不正确的是( )A.软件设计费用比软件重复生产费用高B.硬件功能只需实现一次,而软件功能可能要多次重复实现C.硬件的生产费用比软件的生产费用高D.硬件的设计费用比软件的设计费用低4、对汇编语言程序员透明的是()A.I/O方式中的DMA访问B.浮点数据表示C.访问方式保护D.程序性中断5、IBM360/91对指令中断的处理方法是()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、()属于MIMD系统结构。
A.各处理单元同时受同一个控制单元的管理B.各处理单元同时接受同一个控制单元送来的指令C.松耦合多处理机和多计算机D.阵列处理机二、填空题11、要实现两条指令在时间上重叠解释,首先需要付出________,其次,要处理好指令之间可能存在的________12、目前已有的向量处理机结构主要采用________和________两种结构。
吉林大学智慧树知到“计算机科学与技术”《数据结构》网课测试题答案1
![吉林大学智慧树知到“计算机科学与技术”《数据结构》网课测试题答案1](https://img.taocdn.com/s3/m/2c5a34ea77eeaeaad1f34693daef5ef7ba0d12b0.png)
吉林大学智慧树知到“计算机科学与技术”《数据结构》网课测试题答案(图片大小可自由调整)第1卷一.综合考核(共15题)1.图的存储结构有()。
A.邻接矩阵B.邻接表C.数组表示法D.十字链表2.不是所有的AOV网都有一个拓朴序列。
()A.正确B.错误3.设栈的输入序列是1,2,3,4,则1,4,3,2不可能是其出栈序列。
()A.正确B.错误4.从具有n个结点的单链表中查找值等于x的结点时,在查找成功的情况下,平均需比较()个结点。
A.nB.n/2C.(n-1)/2D.(n+1)/25.在第一趟排序之后,一定能把数据表中最大或最小元素放在其最终的排序算法是冒泡排序。
()A.正确B.错误6.数据结构指的是数据之间的关系,主要包含3部分的内容()。
A.数据的逻辑结构B.数据的存储结构C.对数据施加的操作D.算法7.一个好的算法应具备以下性质:()A.正确性B.可读性C.稳健性D.有穷性8.对线性表,可进行如下基本操作:()A.随机存取B.插入C.删除D.查找9.含n个顶点的连通图中的任意一条简单路径,其长度不可能超过()。
A.1B.n/2C.n-1D.n10.在一个单链表中,已知q所指结点是p所指结点的直接前趋,若在p,q之间插入s结点,这执行()操作。
A.s->next=p->next; p->next=sB.q->next=s; s->next=pC.p->next=s->next; s->next=pD.p->next=s; s->next=q11.设有两个串p和q,求q在p中首次出现的位置的运算称作模式匹配。
()A.正确B.错误12.当文件局部有序或文件长度较小的情况下,最佳的排序方法是()。
A.直接插入排序B.直接选择排序C.冒泡排序D.归并排序13.在最好和最坏情况下的时间复杂度均为O(nlogn)且稳定的排序方法是归并排序。
()A.正确B.错误14.深度为6的二叉树最多有()个结点。
吉林大学考研真题数据结构1999
![吉林大学考研真题数据结构1999](https://img.taocdn.com/s3/m/13ea36422b160b4e767fcfc0.png)
吉林大学99考研题
报考专业:计算机软件与理论、计算机应用技术、计算机系统结构
研究方向:计算机学科各方向
考试科目:综合
*写算法要求用标准的ADL算法描述语言,注意给出详尽的结解释过程。
一、回答下列问题(12分):
1.已知一棵高度平衡树如下,其中各节点间大小关系(中根次序)按字典序排列,请画出插入节点JUN后,该二叉树经平衡过程而形成的树形,并说明采用何种转动方式,标出平衡后各节点的平衡系数。
(4分)
2.对于如下的加权有向图,给出算法Dijkstra产生的最短路径的支撑树,设顶点A为源点,并写出生成过程。
(4分)。
30
3.已知2棵(2,3)-树如下(省略外节点):(4分)
(1)对树(a),请分别画出先后插入26,85两个新节点后的树形;
(2)对树(b),请分别画出先后删除53,37两个节点后的树形。
数据结构习题课1
![数据结构习题课1](https://img.taocdn.com/s3/m/dfb989ed16fc700aba68fc76.png)
43; DO
步骤说明有且精[]
2021/8/2
18
1-6
分析下面程序段的时间复杂性
int s=0,i,j,k; for(i=0;i<=n;i++)
for(j=0;j<=i;j++) for(k=0;k<j;k++) s++;
唯一分解定理:2班李百林
三种证法的同学:3班徐文峰(几何法)。
2021/8/2
10
作业情况
正确率70%左右
有问题的说法
因为 2 表示 2 1
因为
不是有理数或找不到分数、循环小数 是无理数?
(p,q)=2:改成p、q有公约数2
表示成p/q,p、q互为质数,q>1或q>0等等
2021/8/2
11
作业1-5
题目描述
试用ADL语言编写一个算法,判断任一整数 n 是否为素数
2021/8/2
12
考察知识点
用ADL描述算法
特殊情况判断 初始化 核心处理步骤
后处理
算法的正确性
证明很难,但验证较容易。用边界条件和特殊数据 验证,人工模拟算法执行。
分析算法的效率
2021/8/2
13
2021/8/2
8
参考答案
假设 2 不是无理数,那么2
一定是有
理数,即存在p、q,使2得
=p/q,p、q互
质。整理得p2=2*q2 ,因此p是偶数。设p=2*k
,则有q2=2*k2 ,因此q也是偶数。这与p、q互
质矛盾。
因此 2 是无理数。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据结构复习题一、单项选择题1. 不带头结点的单链表head为空的判断条件是( )。
A.head==NULLB.head->next==NULLC.head->next==headD.head!=NULL2. 链表不具有的特点是( )。
A.可随机访问任一元素B.插入删除不需要移动元素C.不必事先估计存储空间D.所需空间与线性表长度成正比3. 单链表中,增加头结点的目的是为了()。
A.方便运算的实现B.用于标识单链表C.使单链表中至少有一个结点D.用于标识起始点的位置4. 设输入序列为A,B,C,D,借助一个栈不可以得到的输出序列是( )。
A.A,B,C,DB.A,C,D,BC.D,C,B,AD.D,A,B,C5. 栈和队列都是()。
A.顺序存储的线性表B.链式存储的线性表C.限制存取点的线性结构D.限制存取点的非线性结构6. 串的长度是()。
A.串中不同字符的个数B. 串中不同字母的个数C.串中所含字符的个数且字符个数大于0D.串中所含字符的个数7. 栈和队列的主要区别在于()。
A.它们的逻辑结构不一样B.它们的存储结构不一样C.所包含的运算个数不一样D.插入删除运算的限定不一样8. 从具有n个结点的单链表中查找值等于x的结点时,在查找成功的情况下,平均需比较()个结点。
A.nB.n/2C.(n-1)/2D.(n+1)/29. 线性表是具有n个()的有限序列。
A. 表元素B. 字符C. 数据元素D. 信息项10. 某二叉树的前序和后序序列正好相同,则该二叉树一定是()的二叉树。
A. 空或只有一个结点B. 高度等于其结点数C. 任一结点无左孩子D. 任一结点无右孩子11. 在一棵二叉树的二叉链表中,空指针域数等于非空指针域数加()。
A. 2B. 1C. 0D. –112. 下列排序算法中,第一趟排序完毕后,其最大或最小元素一定在其最终位置上的算法是()。
A. 归并排序B. 直接插入排序C. 快速排序D. 冒泡排序13. 深度为n的二叉树中所含叶子结点的个数最多为()个。
A.2nB.nC.2n-1D.2n-114. 某数组第一个元素的存储地址为100,每个元素的长度为2,则第五个元素的地址是()。
A.110B.108C.100D.12015. 串是()。
A.一些符号构成的序列B.一些字母构成的序列C.一个以上字符构成的序列D.任意有限个字符构成的序列16. 在一个具有n个顶点的无向图中,要连通全部顶点至少需要()条边。
A.nB.n+1C.n-1D.n/217. 下列四个关键词序列中,()不是堆。
A.{05,23,16,68,94,72,71,73}B.{05,16,23,68,94,72,71,73}C.{05,23,16,73,94,72,71,68}D.{05,23,16,68,73,71,72,94}18. 某二叉树的前序和后序序列正好相反,则该二叉树一定是( )的二叉树。
A. 空或只有一个结点B. 高度等于其结点数C. 任一结点无左孩子D. 任一结点无右孩子19. 在一个单链表中,已知(*q)结点是(*p)结点的前驱结点,若在(*q)和(*p)之间插入(*s)结点,则执行()。
A.s->next=p->next; p->next=s;B.p->next=s->next; s->next=p;C.q->next=s; s->next=p;D.p->next=s; s->next=q;20. 设输入序列为的1,2,3,4,借助一个栈可以得到的输出序列是()。
A.1,3,4,2B.3,1,4,2C.4,3,1,2D.4,1,2,321. 二分查找法要求查找表中各元素地键值必须是()排列。
A. 递增或递减B. 递增C. 递减D.无序22. 下列排序算法中,某一趟结束后未必能选出一个元素放其最终位置上的是()。
A. 堆排序B. 冒泡排序C. 快速排序D. 直接插入排序23. 设有7000个无序的元素,希望用最快的速度挑选出其中前5个最大的元素,最好选用()法。
A.冒泡排序B.快速排序C.堆排序D.基数排序24. 任何一个无向连通图的最小生成树()。
A. 只有一棵B. 有一棵或多棵C. 一定有多棵D. 可能不存在25. 3个结点可构成()个不同形态的二叉树。
A.2B.3C.4D.526. 设有6000个无序的元素,希望用最快的速度挑选出其中前6个最大的元素,最好选用()法。
A.冒泡排序B.快速排序C.堆排序D.基数排序27. 某数组第一个元素的存储地址为200,每个元素的长度为4,则第五个元素的地址是()。
A.210B.208C.216D.22028. 在一个具有n个顶点的完全无向图的边数为()。
A.n(n+1)/2B. n(n-1)/2C.n(n-1)D. n(n+1)29. 将一棵有100个结点的完全二叉树从根这一层开始,每一层上从左到右依次对结点进行编号,根结点的编号为1,则编号为49的结点的右孩子编号为()。
A.98B.99C.50D.4830. 在线索二叉树中,结点(*t)没有左子树的充要条件是()。
A. t->left==NULLB. t->ltag==1C.t->ltag==1 && t->left==NULLD.以上都不对31. 稀疏矩阵一般采用( )方法压缩存储。
A.三维数组B.单链表C.三元组表D.散列表32. 设二叉树根结点的层次为0,一棵高度为h 的满二叉树中的结点个数是( )。
A.2hB.2h-1C.2h-1D.2h+1-133. 对于键值序列{72,73,71,23,94,16,5,68,76,103}用筛选法建堆,必须从键值为()的结点开始。
A.103B. 72C.94D.2334. 在一个有向图中,所有顶点的入度之和等于所有顶点出度之和的( )倍。
A.1/2B. 1C.2D.435. 对有n个记录的有序表采用二分查找,其平均查找长度的量级为()。
A.O(n)B. O(nlog2n)C. O(1)D. O(log2n)36.若在线性表中采用折半查找法查找元素,该线性表必须满足()。
A.元素按值有序B.采用顺序存储结构C.元素按值有序,且采用顺序存储结构 D.元素按值有序,且采用链式存储结构37.下面4个序列中,只有()满足堆的定义。
A. 13,27,49,76,76,38,85,97B. 76,38,27,49,76,85,13,97C. 13,76,49,76,27,38,85,97D. 13,27,38,76,49,85,76,9738.二维数组A[5][6]的每个元素占5个单元,将其按行优先顺序存储在起始地址为1000的连续的内存单元中,则元素A[4][5]的存储地址为()。
A.1140 B.1145 C.1120 D.112539.在含n个顶点e条边的无向图的邻接矩阵中,零元素的个数为()。
A.e B.2e C.n2-e D.n2-2e40.邻接表的存储结构下图的深度优先遍历类似于二叉树的()。
A.先序遍历 B. 中序遍历 C. 后序遍历 D. 按层遍历二、填空题1.在双链表中每个结点有两个指针域,一个指向,另一个指向。
2.数据结构的三个方面:数据的、、。
3. 设根结点的层数为0,定义树的高度为树中层数最大的结点的层数加1。
则高度为k的二叉树具有的结点数目,最少为,最多为。
4. 采用二叉链表存储结构,具有n个结点的二叉树一共有个指针域,其中指针域为空。
5. 在有序表(12,24,36,48,60,72,84)中二分查找关键字12时所需进行的关键字比较次数为。
6. 图的存储结构最常用的有和邻接表。
7. 二叉树的存储结构有和链式存储结构。
8. 对于一棵二叉树,设叶子结点数为n0,度为2的结点数为n2,则n0和n2的关是。
9. 一般树的存储结构有双亲表示法、孩子兄弟表示法和。
10. 每个结点只有链接域的链表叫做单链表。
11. 从逻辑关系上讲,数据结构主要分为两大类:线性结构和。
12. 100个结点的完全二叉树的叶子结点数为。
13. 图的存储结构最常用的有和邻接矩阵。
14. 二叉树的存储结构有顺序存储结构和。
15. 一般树的存储结构有双亲表示法、孩子链表表示法和。
16. 二叉树的遍历方式有三种:、和后根遍历。
17. 深度为8的(根的层次号为1)满二叉树有个叶子结点。
18. n个的顶点的连通图的生成树有条边。
19. 如果一个有向图中没有,则该图的全部顶点可以排成一个拓扑序列。
20.下面程序段的时间复杂度是_______ 。
for (int i=1;i<=n;i++)for (int j=1;j<=m;j++)a[i][j]=0;三、应用题1.根据下图给出的二叉树,求出先序、中序和后序遍历的结点序列。
2. 有二叉树先序序列为:ABCDEF,中序序列为:CBAEDF,试画出该二叉树。
3.给定表(40,36,56,6,64,73,8,23),按数据元素在表中的次序构造一棵二叉查找树,并求其平均查找长度。
4. 试分别画出具有3个结点的树和有具有3个结点的二叉树的所有不同形态。
5. 用普里姆算法(Prim)算法求出下图的最小生成树。
6. 根据下图给出的二叉树,求出先序、中序和后序遍历的结点序列。
7. 已知数据序列为{49,38,65,97,76,13},对该数据序列进行排序,试写出直接插入排序每趟的结果。
8. 把下图中的二叉树转化为森林。
9. 已知数据序列为12,5,9,20,6,31,24,对该数据序列进行排序,试写出冒泡排序每趟的结果。
10. 已知一棵二叉树的中序和前序序列如下,求该二叉树的后序序列。
中序序列:c,b,d,e,a,g,i,h,j,f前序序列:a,b,c,d,e,f,g,h,i,j四、算法设计题1. 判断单链表head(head指向表头)是否是递增的。
2. 试设计一算法,删除单链表head(head指向表头)中数据域data的值为x的结点。
3. 假定一棵二叉树用二叉链表存储,试编写求出二叉树中1度结点个数的算法。
4. 假设线性表用带表头结点的单向链表head表示,试写出算法判断单链表head是否是递增的。
5. 编写统计单链表head中,数据域data值为零的结点个数的算法。