数据结构复习题
pta数据结构期末复习题

pta数据结构期末复习题一、选择题(每题2分,共20分)1. 在数据结构中,线性结构的特点是什么?A. 元素之间存在一对一的关系B. 元素之间存在一对多的关系C. 元素之间存在多对多的关系D. 元素之间存在一对一或多对多的关系2. 栈(Stack)是一种后进先出(LIFO)的数据结构,以下哪个操作不是栈的基本操作?A. 入栈(Push)B. 出栈(Pop)C. 查看栈顶元素(Top)D. 排序(Sort)3. 在二叉树中,度为2的节点最多有多少个子节点?A. 1B. 2C. 3D. 44. 哈希表的冲突解决方法不包括以下哪项?A. 开放寻址法B. 链接法C. 线性探测法D. 冒泡排序法5. 图的遍历算法中,深度优先搜索(DFS)使用的是哪种数据结构来实现?A. 队列B. 栈C. 链表D. 树二、填空题(每空2分,共20分)6. 在链表中,每个节点通常包含数据部分和______。
7. 排序算法中,冒泡排序的时间复杂度为______。
8. 快速排序算法的平均时间复杂度为______。
9. 哈夫曼编码是一种______编码方法。
10. 在图的表示方法中,邻接矩阵适用于______图。
三、简答题(每题10分,共30分)11. 简述线性表和非线性表的区别。
12. 解释什么是二叉搜索树,并说明其特点。
13. 描述图的深度优先搜索(DFS)和广度优先搜索(BFS)的区别。
四、计算题(每题15分,共30分)14. 给定一个数组A = [3, 7, 5, 1, 9, 8],请使用选择排序算法对其进行排序,并给出排序过程中的每一步状态。
15. 假设有一个无向图,包含顶点A, B, C, D, E,边的权重如下:(A,B): 1, (B,C): 2, (C,D): 3, (D,E): 4, (A,E): 5。
请使用克鲁斯卡尔算法(Kruskal's algorithm)找到该图的最小生成树。
五、编程题(共10分)16. 编写一个函数,实现单链表的反转,并说明其时间复杂度。
数据结构复习习题和答案(DOC)

第一章绪论一、单项选择题1.数据结构是一门研究非数值计算的程序设计问题中计算机的①以及它们之间的②和操作等的学科。
① A.操作对象 B.计算方法 C·逻辑存储 D.数据映象② A.结构 B.关系 C.运算. D.算法2.数据结构被形式地定义为(D,R),其中D是①的有限集合,R是D上的②有限集合。
① A.算法 B.数据元素 C.数据操作 D.逻辑结构② A.操作 B.映象 C、存储 D.关系3.在数据结构中,从逻辑上可以把数据结构分成()。
A.动态结构和静态结构 B.紧凑结构和非紧凑结构C.线性结构和非线性结构 D.内部结构和外部结构4·算法分析的目的是①,算法分析的两个主要方面是②。
① A. 找出数据结构的合理性 B.研究算法中的输入和输出的关系C. 分析算法的效率以求改进D. 分析算法的易懂性和文档性② A. 空间复杂性和时间复杂性 B.正确性和简明性C.可读性和文档性 D.数据复杂性和程序复杂性5.计算机算法指的是①,它必具备输入、输出和②等五个特性。
① A. 计算方法 B.排序方法 C. 解决问题的有限运算序列 D.调度方法② A. 可行性、可移植性和可扩充性 B. 可行性、确定性和有穷性C. 确定性、有穷性和稳定性 D.易读性、稳定性和安全性6. 线性表的逻辑顺序与存储顺序总是一致的,这种说法()。
A. 正确 B.不正确7. 线性表若采用链式存储结构时,要求内存中可用存储单元的地址()。
A. 必须是连续的 B.部分地址必须是连续的C. 一定是不连续的D. 连续或不连续都可以8.数据结构通常是研究数据的()及它们之间的相互联系。
A.存储和逻辑结构 B.存储和抽象C.理想与抽象 D.理想与逻辑9.数据在计算机存储器内表示时,物理地址与逻辑地址相同并且是连续的,称之为()。
A.存储结构 B.逻辑结构 C.顺序存储结构 D.链式存储结构11.非线性结构是数据元素之间存在一种()。
数据结构各章复习题

计算机学院 甘士成
Copyright © 1992 - 2012 Gane Cheng . All Rights Reserved .
1 / 54
5. 下面说法错误的是(
)
(1)算法原地工作的含义是指不需要任何额外的辅助空间 (2)在相同的规模 n 下,复杂度 O(n)的算法在时间上总是优于复杂度 O(2 )的算法 (3)所谓时间复杂度是指最坏情况下,估算算法执行时间的一个上界 (4)同一个算法,实现语言的级别越高,执行效率就越低 A.(1) B.(1),(2) C.(1),(4) D.(3)
(p^.rlink)^.llink:=p^.llink; (p^.llink)^.rlink:=p; p^.rlink:=(p^.rlink)^.rlink p^.llink:=(p^.rlink)^.rlink;
三、简答题
1.线性表有两种存储结构:一是顺序表,二是链表。试问: (1)如果有 n 个线性表同时并存,并且在处理过程中各表的长度会动态变化,线性表的总数也会自动地改变。在 此情况下,应选用哪种存储结构? 为什么?
计算机学院 甘士成
(B)部分地址必须是连续的
Copyright © 1992 - 2012 Gane Cheng . All Rights Reserved . 3 / 54
(C)一定是不连续的 ( B )7. 线性表L在
(D)连续或不连续都可以 情况下适用于使用链式结构实现。 (B)需不断对L进行删除插入 (D)L中结点结构复杂
(
A )3. 在 n 个结点的顺序表中,算法的时间复杂度是 O(1)的操作是: (A) 访问第 i 个结点(1≤i≤n)和求第 i 个结点的直接前驱(2≤i≤n) (B) 在第 i 个结点后插入一个新结点(1≤i≤n) (C) 删除第 i 个结点(1≤i≤n) (D) 将 n 个结点从小到大排序
数据结构复习题及答案5篇

数据结构复习题及答案5篇第一篇:数据结构复习题及答案、数据结构复习题及答案中南大学现代远程教育课程考试(专科)复习题及参考答案数据结构一、判断题:1.数组是一种复杂的数据结构,数组元素之间的关系既不是线性的也不是树形的。
()2.链式存储在插人和删除时需要保持物理存储空间的顺序分配,不需要保持数据元素之间的逻辑顺序。
()3.在只有度为0和度为k的结点的k叉树中,设度为0的结点有n0个,度为k的结点有nk个,则有n0=nk+1。
()4.折半搜索只适用于有序表,包括有序的顺序表和有序的链表。
()5.如果两个串含有相同的字符,则这两个串相等。
()6.数组可以看成线性结构的一种推广,因此可以对它进行插入、删除等运算。
()7.在用循环单链表表示的链式队列中,可以不设队头指针,仅在链尾设置队尾指针。
()8.通常递归的算法简单、易懂、容易编写,而且执行的效率也高。
()9.一个广义表的表尾总是一个广义表。
()10.当从一个小根堆(最小堆)中删除一个元素时,需要把堆尾元素填补到堆顶位置,然后再按条件把它逐层向下调整,直到调整到合适位置为止。
()11.对于一棵具有n个结点,其高度为h的二叉树,进行任一种次序遍历的时间复杂度为O(h)。
()12.存储图的邻接矩阵中,邻接矩阵的大小不但与图的顶点个数有关,而且与图的边数也有关。
()13.直接选择排序是一种稳定的排序方法。
()14.闭散列法通常比开散列法时间效率更高。
()15.有n个结点的不同的二叉树有n!棵。
()16.直接选择排序是一种不稳定的排序方法。
()17.在2048个互不相同的关键码中选择最小的5个关键码,用堆排序比用锦标赛排序更快。
()18.当3阶B_树中有255个关键码时,其最大高度(包括失败结点层)不超过8。
()19.一棵3阶B_树是平衡的3路搜索树,反之,一棵平衡的3路搜索树是3阶非B_树。
()20.在用散列表存储关键码集合时,可以用双散列法寻找下一个空桶。
《数据结构》复习题

《数据结构》复习题一.选择题:1.数据结构是研究数据的( ) 以及它们之间的相互关系A.理想结构,物理结构B.理想结构,抽象结构C.物理结构,逻辑结构D.抽象结构,逻辑结构2. 组成数据的基本单位是()A.数据项B.数据类型C. 数据元素D. 数据变量3. 如果某数据结构的数据元素的集合为S={A,B,C,D,E,F,G},元素之间的关系为R={<A,D>,<A,G>,<D,B>,<D,C>,<G,E>,<G,F>},则该数据结构是一种()A.线性结构B. 树结构C. 图结构D. 链表结构4. 线性表的链接实现有利于( ) 运算A.插入B.读表元C.查找D.定位5. 设一数列的输入顺序为1,2,3,4,5,6通过栈操作不可能排成的输出序列为()A. 3,2,5,6,4,1B. 1,5,4,6,2,3C. 2,4,3,5,1,6D. 4,5,3,6,2,16. 设字符串S1=‘ABCDEFG’,S2=‘PQRST’则运算S=Concat(Sub(S1,2,Length(S2)),Sub(S1,Length(S2),2))后结果为()A.‘BCQR’B.‘BCDEF’C.‘BCDEFG’D.‘BCDEFEF’7. 设单链表中指针P指向结点A,若要删除A之后的结点(若存在),则修改指针的操作为()A. p→next= p→next→nextB. p= p→nextC. p= p→next→nextD. p→next = p8. 线性表采用链式存储时,其地址()A. 必须是连续的B.部分地址必须是连续的C. 一定是不连续的D.连续与否均可以9. 在内部排序时,排序不稳定的有()A.插入排序B. 冒泡排序C. 快速排序D.归并排序10. 设有1000个元素,用折半法查找时,最小比较次数为()A.0B. 1C.10D. 50011. 将一个元素进入队列的时间复杂度是()n)A. O (1)B. O (n)C. O (n2)D. O (log212. 在一个具有n个结点的单链表中查找其值等x的结点,在查找成功的情况下,需要比较()个元素结点A. n/2B. nC. (n+1)/2D. (n-1)/213. 从一个长度为n的顺序表中删除第i个元素(1≤i≤n),需向前移动()个元素A. n-iB. n-i+1C. n-i-1D. i14. 总共3层的完全二叉树,其结点数至少有()A.3B. 4C.7D.815. 队列操作的原则是()A. 先进先出B.后进先出C. 只能进行插入D. 只能进行删除16. 若线性表最常用的操作是存取第i个元素及其前驱元素的值,则采用()存储方式最节省时间A.单链表B. 双向链表C. 音循环链表D. 顺序表17. 栈和队列都是()A. 顺序存储的线性结构B. 限制存取点的线性结构C. 链接存储的线性结构D. 限制存取点的非线性结构18. 与线性表的链接存储相符的特性是()A.插入和删除操作灵活B. 需要连续存储空间C. 便于随机访问D. 存储密度大19.若进队序列为1,2,3,则出队序列是()A.3,2,1B. 1,3,2C. 1,2,3D. 3,2,120. 在单向循环链表中,若头指针为h,那么p所指结点为尾结点的条件是()A. p= NULLB. p→next= NULLC. p=hD. p→next= h3. 在双向循环链表中,在指针P所指的结点之后插入指针f所指的结点,其操作为。
(完整版)数据结构复习题(附答案)

(完整版)数据结构复习题(附答案)⼀、算法设计题(每题15分,共60分)答题要求:①⽤⾃然语⾔说明所采⽤算法的思想;②给出每个算法所需的数据结构定义,并做必要说明;③写出对应的算法程序,并做必要的注释。
1、有⼀个带头结点的单链表,每个结点包括两个域,⼀个是整型域info,另⼀个是指向下⼀个结点的指针域next。
假设单链表已建⽴,设计算法删除单链表中所有重复出现的结点,使得info域相等的结点只保留⼀个。
3、约瑟夫环问题(Josephus问题)是指编号为1、2、…,n的n(n>0)个⼈按顺时针⽅向围坐成⼀圈,现从第s个⼈开始按顺时针⽅向报数,数到第m个⼈出列,然后从出列的下⼀个⼈重新开始报数,数到第m的⼈⼜出列,…,如此重复直到所有的⼈全部出列为⽌。
现要求采⽤循环链表结构设计⼀个算法,模拟此过程。
4、编程实现单链表的就地逆置。
23.在数组 A[1..n]中有n个数据,试建⽴⼀个带有头结点的循环链表,头指针为h,要求链中数据从⼩到⼤排列,重复的数据在链中只保存⼀个.5、设计⼀个尽可能的⾼效算法输出单链表的倒数第K个元素。
3、假设以I和O分别表⽰⼊栈和出栈操作。
栈的初态和终态均为空,⼊栈和出栈的操作序列可表⽰为仅由I和O组成的序列,称可以操作的序列为合法序列,否则称为⾮法序列。
(15分)(1)下⾯所⽰的序列中哪些是合法的?A. IOIIOIOOB. IOOIOIIOC. IIIOIOIOD. IIIOOIOO(2)通过对(1)的分析,写出⼀个算法,判定所给的操作序列是否合法。
若合法,返回true,否则返回false(假定被判定的操作序列已存⼊⼀维数组中)。
5、设从键盘输⼊⼀整数的序列:a1, a2, a3,…,an,试编写算法实现:⽤栈结构存储输⼊的整数,当ai≠-1时,将ai进栈;当ai=-1时,输出栈顶整数并出栈。
算法应对异常情况(⼊栈满等)给出相应的信息。
设有⼀个背包可以放⼊的物品重量为S,现有n件物品,重量分别为W1,W2,...,W n。
数据结构复习题

一、单项选择题1.评价一个算法时间性能的主要标准是()A.算法易于调试B. 算法易于理解C.算法的稳定性和正确性D.算法的时间复杂度2.可用带表头结点的链表来表示表,也可用不带表头结点的链表来表示表,前者的主要好处是()A.可以加快对表的遍历B.使空表和非空表的处理统一C.提高存取结点的速度D.节省存储空间3.稀疏矩阵一般的压缩存储有两种,即()。
A.一维数组和二维数组B.一维数组和三元组C.二维数组和十字链表D.三元组和十字链表4.链表不具有的特点是()。
A.可随机访问任一元素B.插入删除不需要移动元素C.不必事先估计存储空间D.所需空间与线性表的长度成正比5.非空的循环单链表head的尾结点p满足()。
A.P->next==NULL B.p==NULL C.P->next==head D.P==head 6.对稀疏矩阵进行压缩存储是为了()。
A.便于进行矩阵运算B.便于输入和输出C.节省存储空间D.降低运算的时间复杂度7.数据结构中,与所使用的计算机无关的是数据的()结构。
A.顺序B.物理C.逻辑D.物理和存储8.在长度为n的顺序表中插入一个元素时,等概率情况下的平均移动元素的次数是()。
A.(n-1)/2B.n/2C.n*(n-1)/2D.(n+1)/29.对于一个头指针为H的带头结点的单链表,判定该表为空表的条件是()A. H==NULL B.H!=NULL C.H→next ==H D.H→next==NULL10. 在一个顺序表中,若表的第一个元素的存储地址是210,每一个元素的长度为3,则第5个元素的存储地址是()。
A.219 B.222 C.225 D.22811. 栈S最多能容纳4个元素,现有6个元素按a,b,c,d,e,f的顺序进栈,下面序列()是可能的出栈序列。
A.edcbaf B.bcefad C.cbedaf D.adfebc12.循环队列用数组A[M]存放元素,已知其头尾指针分别为front和rear,则当前队列中的元素个数是()。
数据结构复习题及参考答案

《数据结构》课程复习资料一、填空题:1.设需要对5个不同的记录关键字进行排序,则至少需要比较________次,至多需要比较__________次。
2.设二叉排序树的高度为h,则在该树中查找关键字key最多需要比较_________次。
3.设在长度为20的有序表中进行二分查找,则比较一次查找成功的结点数有_________个,比较两次查找成功有结点数有_________个。
4.数据结构从逻辑上划分为三种基本类型:___________、__________和___________。
5.在一个具有n个顶点的无向完全图中,包含有________条边,在一个具有n个顶点的有向完全图中,包含有________条边。
6.向一棵B_树插入元素的过程中,若最终引起树根结点的分裂,则新树比原树的高度___________。
7.在堆排序的过程中,对任一分支结点进行筛运算的时间复杂度为________,整个堆排序过程的时间复杂度为________。
8.在快速排序、堆排序、归并排序中,_________排序是稳定的。
9.在有n个叶子结点的哈夫曼树中,总结点数是_______。
10.一棵树T采用二叉链表存储,如果树T中某结点为叶子结点,则在二叉链表BT中所对应的结点一定_______。
11.3.已知数组A[10][10]为对称矩阵,其中每个元素占5个单元。
现将其下三角部分按行优先次序存储在起始地址为1000的连续的内存单元中,则元素A[5,6]对应的地址是_______。
12.在有n个结点的无向图中,其边数最多为_______。
13.取出广义表A=(x,(a,b,c,d))中原子x的函数是_______。
14.对矩阵采用压缩存储是为了___ ____。
15.带头结点的双循环链表L为空表的条件是_______。
16.设线性表中元素的类型是实型,其首地址为1024,则线性表中第6个元素的存储位置是。
17.对于顺序存储的栈,因为栈的空间是有限的,在进行运算时,可能发生栈的上溢,在进行运算时,可能发生栈的下溢。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
//八大排序:(插入排序):1直接插入排序2希尔排序(交换排序):3冒泡排序4快速排序:寻找中点,对左右递归排序(选择排序):5简单选择排序6堆排序7归并排序8基数排序习题一1.在数据结构中,数据的基本单位是_________。
A. 数据项B. 数据类型C. 数据元素D. 数据变量2. 计算算法的时间复杂度是属于一种_______。
A. 事前统计的方法B. 事前分析估算的方法C. 事后统计的方法D. 事后分析估算的方法3. 线性表若采用链式存储结构时,要求内存中可用存储单元的地址_______。
A. 必须是连续的B. 部分地址必须是连续的C. 一定是不连续的D. 连续不连续都可以4. 在顺序表存储结构下,插入操作算法。
A. 需要判断是否表满B. 需要判断是否表空C. 不需要判断表满D. 需要判断是否表空和表满5. 在一个单链表中,若删除p所指结点的后继结点,则执行。
A. p.next = p.next.next;B. p.next = p.next;C. p = p.next.next;D. p = p.next; p.next = p.next.next;6. 若线性表最常用的操作是存取第i个元素及其前趋和后继元素的值,为节省时间应采用的存储方式是。
A. 单链表B. 双向链表C. 单循环链表D. 顺序表7. 在初始为空的堆栈中依次插入元素f,e,d,c,b,a以后,进行一次删除操作后,此时栈顶元素是。
A. cB.dC.bD. e8. 栈和队列的共同点是。
A. 都是先进后出B. 都是先进先出C. 只允许在端点处插入和删除元素D. 没有共同点9. 判定一个循环队列QU(最多元素为m0)为满队列的条件是。
A. QU.front==QU.rearB. QU.front!=QU.rearC. QU.front==(QU.rear+1) % m0D. QU.front!=(QU.rear+1) % m010.以下说法错误的是。
A.树形结构的特点是一个结点可以有多个直接前趋B.线性结构中的一个结点至多只有一个直接后继C.树形结构可以表达(组织)更复杂的数据D.树(及一切树形结构)是一种"分支层次"结构11. 如下图所示的4 棵二叉树中,不是完全二叉树。
12. 深度为5 的二叉树至多有个结点。
//设深度为k (2^k)-1A. 16B. 32C.31D.1013.在一棵二叉树中,度数为2的结点数等于n2,度数为1的结点数等于n1,那么度数为0的结点数等于是_______。
A.n1+1B. n2+1C. n1+2D.n2+214. 对含有个结点的非空二叉树,采用任何一种遍历方式,其结点访问序列均相同。
A.0B.1C.2D.不存在这样的二叉树15. 在一个图中,所有顶点的度数之和等于所有边数的倍。
A. 1/2B. 1C. 2D. 4无向图:顶点度数之和为边数的两倍有向图:在一条边AB(A→B)都会给A提供一个出度,给B提供一个入度则顶点度数之和=2*顶点入度之和=2*顶点出度之和=顶点入度之和+顶点出度之和=2*边数16. 具有6 个顶点的无向图至少应有条边才能确保是一个连通图。
A. 5B. 6C. 7D. 8设边数为x,x>=6-1,x=n-1时图为树,任取顶点s、t,从s到t有且只有一条无向路,若有向s→t则t→s有向必不存在。
无向图最多n*(n-1)/2,有向图最多n*(n-1)17. 对于一个具有n 个顶点的无向图,若采用邻接矩阵表示,则该矩阵的大小是。
A. nB. (n-1)2C. n-1D. n218. 对线性表进行折半(二分)查找时,要求线性表的存储方式是。
A. 顺序存储B. 链接存储C. 以关键字有序排序的顺序存储D. 以关键字有序排序的链接存储//二分查找要使用下标,数据按递增或递减排好19. 在所有排序方法中,关键字比较的次数与记录的初始排列次序无关的是。
A. 希尔排序B. 冒泡排序C. 插入排序D. 选择排序(扫描最小)//插入排序:希尔排序、冒泡排序20. 一组记录的关键码为(46,79,56,38,40,84),则利用快速排序的方法,以第一个记录为基准得到的一次划分结果为。
A. 38,40,46,56,79,84B. 40,38,46,79,56,84C. 40,38,46,56,79,84D. 40,38,46,84,56,7921. 排序方法中,从未排序序列中挑选元素,并将其依次放入已排序序列(初始时为空)的一端的方法,称为。
A. 希尔排序B. 归并排序C. 插入排序D. 选择排序22. 快速排序的平均时间复杂度是:。
A.O(n2)B. O(n)C. O(n*log2n)D. O( log2n)23. 在一棵完全二叉树中,若编号为i的结点存在左孩子,则左孩子结点的编号。
A.2i-1B.2iC.2i+1D.2i+224. 在一个具有n个顶点的有向完全图中,所含的弧数为。
A.n B.n*(n-1)C.n*(n+1)D.n*(n-1)/225.顺序查找法适合于存储结构为的线性表。
A.只能是顺序存储B. 顺序存储或链接存储都可以C.只能是链式存储D. 压缩存储二、填空题(20分,每空1分)1. 数据结构在物理上可分为顺序存储结构和链式存储结构。
2. 在带表头结点的单链表中,当删除某一指定结点时,必须找到该结点的___前一__结点。
3.在单链表中,指针p所指结点为最后一个结点的条件是p.next==null;。
4. 在一个长度为n的顺序表中第i个元素(1≤i≤n)之前插入一个元素时,需向后移动元素的个数是n-i+1。
//i-1,n-(i-1)5. 在非空线性链表中由p所指的链结点后面插入一个由q所指的链结点的过程是依次执行动作q.next = p.next; 。
6. 设有一个空栈,现输入序列为1,2,3,4,5。
经过push,push,pop,push,pop,push,pop,push后,输出序列是2、3、4。
7. 根据下图中的树回答问题:(1)这棵树的根结点是;(2)这棵树的叶子结点是;(3)结点k3 的度是;(4)这棵树的度为;(5)这棵树的深度是;(6)结点k3 的孩子是;(7)结点k3 的双亲结点是。
8. 根据二叉树的定义,具有三个结点的二叉树有5种不同的形态9. 在无向图G 的邻接矩阵A 中,若A[i][j]等于1,则A[j][i]等于1//无向图的邻接矩阵是对称矩阵10. 在有向图的邻接矩阵上,由第i行可得到第个结点的出度。
11. 在对一组记录(54,38,96,23,15,72,60,45,83)进行直接插入排序时,当把第8 个记录45 插入到有序表时,为寻找插入位置需比较5次。
12. 在插入和选择排序中,若初始数据基本正序,则选用插入排序//关键字比较次数和记录移动次数都很少;若初始数据基本反序则选用选择排序//两者关键字比较次数差不多,选择排序的记录移动次数很少。
三、应用题(20分,每题4分)1. 分别写出图中二叉树的先序、中序和后序遍历序列。
先序序列:中序序列:后序序列:2..已知权值{16,6,3,5,11,9},试画出它对应的哈夫曼树(要求每个结点的左子结点的值小于右子结点的值)○27/ \○11○16/ \ / \○5○6○7○9/ \○2○33.请写出下面图的最小生成树(普里姆算法或克鲁斯卡尔算法均可)4.有序列{38,19,64,13,96,49,41},采用冒泡排序方法由小到大进行排序,请写出每趟的结果。
略。
5. 请写出无向图的邻接矩阵略。
四、写程序题(10分)1. 在顺序表中第i个位置插入一个新元素studentID (3分)public class SqList {finalintmaxlen = 1000;int data[] = new int[maxlen];intlen = 0;public void insertElementAt(intstudentID,inti){if(len == maxlen ){System.out.println("溢出");return;}else{for(int j = len ; j>=i-1; j--)date[j+1] = data[j];date[j]= studentID;len++;return;}}}2. 删除单链表中的第i个结点(3分)//单链表节点定义classLnode{publicint data;publicLnode next;}//单链表的定义public class LinkedList {Lnode h = null; //头指针public void remove(inti){int j = 0;Lnode p = h.next;Lnode q;while(p.next != null){j++;if(j == i-1){q=p;p=p.next;q = null;return;}elsep = p.next;}}}3. 请写出冒泡排序的代码(4分)static void mppx(int r[],int n){intflag,temp;for(inti=1;i<n;i++){flag = 0;for(int j=0;j<n-i;j++){if(r[j+1]<r[j]){//请补全代码flag++;int count =r[j];r[j]=r[j+1];r[j+1]=count;}}if(flag == 0)return;}}习题二1、在一个单链表中,删除p所指结点的直接后继的操作是。
A. p.next=p.next.nextB.p=p.next;p.next=p.next.nextC. p.next=p.nextD.p= p.next.next2、在数据结构中,数据的最小单位是_________。
A. 数据项B. 数据类型C. 数据元素D. 数据变量3、若让元素a,b,c,d依次进栈,则出栈次序不可能出现种情况。
A.a,b,c,d B.d,c,b,a C.a,d,b,c D.a,d,c,b4、树形结构最适合用来描述。
A. 有序的数据元素B. 无序的数据元素C. 数据元素之间具有层次关系的数据D.数据元素之间没有关系的数据5、若二叉树中度为2的结点有15个,度为1的结点有10个,则有个树叶结点。
A.25 B. 15 C. 16 D. 416、线性表若采用链式存储结构时,要求内存中可用存储单元的地址_______。
A. 必须是连续的B. 部分地址必须是连续的C. 一定是不连续的D. 连续不连续都可以7、若线性表最常用的操作是存取第i个元素及其前趋和后继元素的值,为节省时间应采用的存储方式是。