数据结构1800题(答案全)
- 格式:doc
- 大小:1.85 MB
- 文档页数:855
数据结构1800例题与答案第一章绪论一、选择题(每小题2分)1.算法的计算量的大小称为计算的( B )。
【北京邮电大学2000 二、3 (20/8分)】A.效率B.复杂性C.现实性D.难度2.算法的时间复杂度取决于(C)。
【中科院计算所1998 二、1 (2分)】A.问题的规模B.待处理数据的初态C.A和B D.都不是3.计算机算法指的是(①C ),它必须具备(② B )这三个特性。
①A.计算方法B.排序方法C.解决问题的步骤序列D.调度方法②A.可执行性、可移植性、可扩充性B.可执行性、确定性、有穷性C.确定性、有穷性、稳定性D.易读性、稳定性、安全性【南京理工大学1999 一、1(2分)【武汉交通科技大学1996 一、1(4分)】4.一个算法应该是(B )。
【中山大学1998 二、1(2分)】A.程序B.问题求解步骤的描述C.要满足五个基本特性D.A和C.5.下面关于算法说法错误的是( D )【南京理工大学2000 一、1(1.5分)】A.算法最终必须由计算机程序实现B.为解决某问题的算法同为该问题编写的程序含义是相同的C. 算法的可行性是指指令不能有二义性D. 以上几个都是错误的6. 下面说法错误的是(C )【南京理工大学2000 一、2 (1.5分)】(1)算法原地工作的含义是指不需要任何额外的辅助空间(2)在相同的规模n下,复杂度O(n)的算法在时间上总是优于复杂度O(2n)的算法(3)所谓时间复杂度是指最坏情况下,估算算法执行时间的一个上界(4)同一个算法,实现语言的级别越高,执行效率就越低A.(1) B.(1),(2) C.(1),(4) D.(3)7.从逻辑上可以把数据结构分为( C )两大类。
【武汉交通科技大学1996 一、4(2分)】A.动态结构、静态结构B.顺序结构、链式结构C.线性结构、非线性结构D.初等结构、构造型结构8.以下与数据的存储结构无关的术语是( D )。
【北方交通大学2000 二、1(2分)】A.循环队列 B. 链表 C. 哈希表 D. 栈9.以下数据结构中,哪一个是线性结构( D )?【北方交通大学2001 一、1(2分)】A.广义表 B. 二叉树 C. 稀疏矩阵 D. 串10.以下那一个术语与数据的存储结构无关?(A)【北方交通大学2001 一、2(2分)】A.栈 B. 哈希表 C. 线索树 D. 双向链表11.在下面的程序段中,对x的赋值语句的频度为(C)【北京工商大学2001 一、10(3分)】FOR i:=1 TO n DOFOR j:=1 TO n DOx:=x+1;A.O(2n) B.O(n) C.O(n2) D.O(log2n)12.程序段FOR i:=n-1 DOWNTO 1 DOFOR j:=1 TO i DOIF A[j]>A[j+1]THEN A[j]与A[j+1]对换;其中n为正整数,则最后一行的语句频度在最坏情况下是(D)A. O(n)B. O(nlogn)C. O(n3)D. O(n2) 【南京理工大学1998一、1(2分)】13.以下哪个数据结构不是多型数据类型(D)【中山大学1999 一、3(1分)】A.栈B.广义表C.有向图D.字符串14.以下数据结构中,(A)是非线性数据结构【中山大学1999 一、4】A.树B.字符串C.队D.栈15. 下列数据中,(C)是非线性数据结构。
数据结构考试题目和答案一、单项选择题1. 在数据结构中,线性结构和非线性结构的区别在于()。
A. 结构中元素的个数B. 结构中是否包含子结构C. 结构中元素之间是否有一对一的对应关系D. 结构中元素之间是否有层次关系答案:D2. 一个栈的入栈序列为1, 2, 3, 4, 5,则可能的出栈序列为()。
A. 4, 3, 2, 5, 1B. 5, 4, 3, 2, 1C. 5, 4, 3, 1, 2D. 1, 2, 3, 4, 5答案:B3. 在二叉树中,度为2的节点数为n,度为1的节点数为m,度为0的节点数为p,则m的值为()。
A. nB. n-1C. p-1D. p+1答案:B4. 哈希表的冲突解决方法中,开放定址法和链地址法的主要区别在于()。
A. 是否使用链表B. 是否使用数组C. 是否使用额外的存储空间D. 是否使用线性探测答案:C5. 对于一个无向图,其邻接矩阵表示法中,矩阵的行数和列数分别为()。
A. 顶点数和边数B. 顶点数和顶点数C. 边数和边数D. 边数和顶点数答案:B二、填空题1. 在顺序表中,插入一个元素平均需要移动元素的个数为表长减1,即 _______ 。
答案:n-12. 快速排序算法的时间复杂度为 _______ 。
答案:O(n^2)3. 折半查找法的平均查找长度为 _______ 。
答案:O(log n)4. 在图的遍历中,深度优先搜索(DFS)使用的栈是_______ 。
答案:非必需的5. 一个完全二叉树有15个度为2的节点,则该树的叶子节点数为 _______ 。
答案:16三、简答题1. 什么是二叉搜索树?请简述其特点。
答案:二叉搜索树是一种特殊的二叉树,其中每个节点的值都大于其左子树中所有节点的值,并且小于其右子树中所有节点的值。
其特点包括:- 每个节点的左子树只包含小于节点值的节点。
- 每个节点的右子树只包含大于节点值的节点。
- 左子树和右子树也必须是二叉搜索树。
数据结构试题及答案一、选择题1. 下列哪项不是线性结构的特点?A. 有且只有一个根节点B. 每个节点最多有一个前驱和一个后继C. 至少有一个节点D. 每个节点最多有一个前驱和多个后继答案:D解析:线性结构的特点包括有且只有一个根节点、每个节点最多有一个前驱和一个后继、至少有一个节点。
选项D描述的是非线性结构的特点。
2. 在单链表中,增加一个头节点的作用是()A. 便于首元节点的插入和删除操作B. 便于首元节点的访问C. 便于链表的操作D. 便于链表的删除答案:A解析:在单链表中,增加一个头节点可以使得首元节点的插入和删除操作更加方便,避免了首元节点特殊情况的处理。
3. 下面哪一个不是栈的基本运算?A. 入栈B. 出栈C. 初始化栈D. 求栈顶元素答案:C解析:栈的基本运算包括入栈、出栈、求栈顶元素和判断栈空。
初始化栈是创建栈的过程,不属于基本运算。
二、填空题4. 在顺序表中,元素之间的逻辑关系是由_______表示的。
答案:物理位置解析:顺序表中,元素之间的逻辑关系是通过物理位置来表示的。
每个元素在内存中占据连续的存储空间。
5. 设栈S的初始状态为空。
若元素序列为ABCDEF,当元素序列的进栈和退栈操作交叉进行时,下列序列中不可能出现在栈S中的是_______。
答案:BACF解析:当元素序列的进栈和退栈操作交叉进行时,栈中可能出现的序列有很多种,但BACF不可能是栈中出现的序列,因为元素C在元素F之前进栈,但F在C之前出栈,违反了栈的后进先出原则。
三、判断题6. 线性表是一种随机存取结构,因此可以随机访问表中的任一元素。
()答案:正确解析:线性表是一种随机存取结构,支持随机访问表中的任一元素,时间复杂度为O(1)。
7. 在双向链表中,每个节点包含两个指针,一个指向前一个节点,另一个指向下一个节点。
()答案:正确解析:双向链表中的每个节点确实包含两个指针,一个指向前一个节点,另一个指向下一个节点,便于从任意方向遍历链表。
第6章树和二叉树部分答案解释如下。
12. 由二叉树结点的公式:n=n0+n1+n2=n0+n1+(n0-1)=2n0+n1-1,因为n=1001,所以1002=2n0+n1,在完全二叉树树中,n1只能取0或1,在本题中只能取0,故n=501,因此选E。
42.前序序列是“根左右”,后序序列是“左右根”,若要这两个序列相反,只有单支树,所以本题的A和B均对,单支树的特点是只有一个叶子结点,故C是最合适的,选C。
A或B 都不全。
由本题可解答44题。
47. 左子树为空的二叉树的根结点的左线索为空(无前驱),先序序列的最后结点的右线索为空(无后继),共2个空链域。
52.线索二叉树是利用二叉树的空链域加上线索,n个结点的二叉树有n+1个空链域。
部分答案解释如下。
6.只有在确定何序(前序、中序、后序或层次)遍历后,遍历结果才唯一。
19.任何结点至多只有左子树的二叉树的遍历就不需要栈。
24. 只对完全二叉树适用,编号为i的结点的左儿子的编号为2i(2i<=n),右儿子是2i+1(2i+1<=n)37. 其中序前驱是其左子树上按中序遍历的最右边的结点(叶子或无右子女),该结点无右孩子。
38 . 新插入的结点都是叶子结点。
42. 在二叉树上,对有左右子女的结点,其中序前驱是其左子树上按中序遍历的最右边的结点(该结点的后继指针指向祖先),中序后继是其右子树上按中序遍历的最左边的结点(该结点的前驱指针指向祖先)。
44.非空二叉树中序遍历第一个结点无前驱,最后一个结点无后继,这两个结点的前驱线索和后继线索为空指针。
三.填空题1.(1)根结点(2)左子树(3)右子树2.(1)双亲链表表示法(2)孩子链表表示法(3)孩子兄弟表示法3.p->lchild==null && p->rchlid==null 4.(1) ++a*b3*4-cd (2)18 5.平衡因子6. 97. 128.(1)2k-1 (2)2k-19.(1)2H-1 (2)2H-1(3)H=⎣log2N⎦+110. 用顺序存储二叉树时,要按完全二叉树的形式存储,非完全二叉树存储时,要加“虚结点”。
第1章绪论一、选择题1. 算法的计算量的大小称为计算的〔〕。
【北京邮电大学2000 二、3 〔20/8分〕】A.效率 B. 复杂性 C. 现实性 D. 难度2. 算法的时间复杂度取决于〔〕【中科院计算所 1998 二、1 〔2分〕】A.问题的规模 B. 待处理数据的初态 C. A和B3.计算机算法指的是〔1〕,它必须具备〔2〕这三个特性。
(1) A.计算方法 B. 排序方法 C. 解决问题的步骤序列 D. 调度方法(2) A.可执行性、可移植性、可扩大性 B. 可执行性、确定性、有穷性C. 确定性、有穷性、稳定性D. 易读性、稳定性、平安性【南京理工大学 1999 一、1〔2分〕【武汉交通科技大学 1996 一、1〔 4分〕】4.一个算法应该是〔〕。
【中山大学 1998 二、1〔2分〕】A.程序 B.问题求解步骤的描绘 C.要满足五个根本特性 D.A和C.5. 下面关于算法说法错误的选项是〔〕【南京理工大学 2000 一、1〔1.5分〕】A.算法最终必须由计算机程序实现B.为解决某问题的算法同为该问题编写的程序含义是一样的C. 算法的可行性是指指令不能有二义性D. 以上几个都是错误的6. 下面说法错误的选项是〔〕【南京理工大学 2000 一、2 〔1.5分〕】(1〕算法原地工作的含义是指不需要任何额外的辅助空间〔2〕在一样的规模n下,复杂度O(n)的算法在时间上总是优于复杂度O(2n)的算法〔3〕所谓时间复杂度是指最坏情况下,估算算法执行时间的一个上界〔4〕同一个算法,实现语言的级别越高,执行效率就越低A.(1) B.(1),(2) C.(1),(4) D.(3)7.从逻辑上可以把数据构造分为〔〕两大类。
【武汉交通科技大学 1996 一、4〔2分〕】A.动态构造、静态构造 B.顺序构造、链式构造C.线性构造、非线性构造 D.初等构造、构造型构造8.以下与数据的存储构造无关的术语是〔〕。
【北方交通大学 2000 二、1〔2分〕】A.循环队列 B. 链表 C. 哈希表 D. 栈9.以下数据构造中,哪一个是线性构造〔〕?【北方交通大学 2001 一、1〔2分〕】A.广义表 B. 二叉树 C. 稀疏矩阵 D. 串10.以下那一个术语与数据的存储构造无关?〔〕【北方交通大学 2001 一、2〔2分〕】A.栈 B. 哈希表 C. 线索树 D. 双向链表11.在下面的程序段中,对x的赋值语句的频度为〔〕【北京工商大学 2001 一、10〔3分〕】FOR i:=1 TO n DOFOR j:=1 TO n DOx:=x+1;A. O(2n) B.O(n) C.O(n2) D.O(log2n)12.程序段 FOR i:=n-1 DOWNTO 1 DOFOR j:=1 TO i DOIF A[j]>A[j+1]THEN A[j]与A[j+1]对换;其中 n为正整数,那么最后一行的语句频度在最坏情况下是〔〕A. O〔n〕B. O(nlogn)C. O(n3)D. O(n2) 【南京理工大学1998一、1(2分)】13.以下哪个数据构造不是多型数据类型〔〕【中山大学 1999 一、3〔1分〕】A.栈 B.广义表 C.有向图 D.字符串14.以下数据构造中,〔〕是非线性数据构造【中山大学 1999 一、4】A.树 B.字符串 C.队 D.栈15. 以下数据中,〔〕是非线性数据构造。
数据结构试题及答案一、选择题题目1:以下哪一个不是线性结构的基本特征?A. 有且只有一个根节点B. 每个节点最多有一个前件和一个后件C. 数据元素之间存在一对一的线性关系D. 数据元素可以任意插入和删除答案:D解析:线性结构的基本特征包括有且只有一个根节点,每个节点最多有一个前件和一个后件,数据元素之间存在一对一的线性关系。
数据元素任意插入和删除是线性表的特点,但不是线性结构的基本特征。
题目2:下列哪种排序算法的平均时间复杂度是 O(n log n)?A. 冒泡排序B. 选择排序C. 快速排序D. 插入排序答案:C解析:快速排序在平均情况下的时间复杂度为 O(n log n),而冒泡排序、选择排序和插入排序的平均时间复杂度均为O(n^2)。
二、填空题题目3:在树形结构中,节点拥有的子节点的个数称为______。
答案:度解析:在树形结构中,节点拥有的子节点的个数称为“度”。
例如,一个节点有两个子节点,则其度为2。
题目4:对于具有 n 个节点的二叉树,其完全二叉树的最小深度为______。
答案:log2(n+1)解析:完全二叉树的最小深度是最后一个节点所在的层级。
对于具有 n 个节点的二叉树,其最小深度为 log2(n+1)。
三、判断题题目5:堆排序是一种不稳定的排序算法。
(对/错)答案:对解析:堆排序是一种不稳定的排序算法。
在堆排序过程中,相等的数据元素可能会改变它们在原数组中的相对位置。
题目6:在顺序存储结构中,数据的插入和删除操作的时间复杂度是 O(1)。
(对/错)答案:错解析:在顺序存储结构中,数据的插入和删除操作的时间复杂度不是 O(1)。
当插入或删除的位置不是在数组的末尾时,需要移动大量元素,其时间复杂度为 O(n)。
四、应用题题目7:给定一个长度为 n 的整数数组 arr,请编写一个算法,找出数组中的旋转点。
假设数组中不包含重复元素,并且原数组是一个升序排序的数组。
例如,数组 `[4, 5, 6, 7, 0, 1, 2]` 的旋转点是 4。
数据结构题库及答案详解一、选择题1. 在数据结构中,线性结构的特点是什么?A. 结构中存在唯一的开始结点和终端结点B. 结构中所有结点的前驱和后继都存在C. 结构中所有结点都只有一个直接前驱和一个直接后继D. 结构中存在多个开始结点和终端结点答案:C2. 栈是一种特殊的线性表,其特点是:A. 先进先出B. 先进后出C. 可以同时在两端进行插入和删除操作D. 只能在一端进行插入和删除操作答案:D3. 在二叉树的遍历算法中,先序遍历的顺序是:A. 先访问根结点,然后遍历左子树,最后遍历右子树B. 先遍历左子树,然后访问根结点,最后遍历右子树C. 先遍历右子树,然后访问根结点,最后遍历左子树D. 先遍历左右子树,最后访问根结点答案:A二、填空题4. 在图的遍历中,______算法可以避免重复访问同一顶点。
5. 哈希表的冲突可以通过______方法来解决。
答案:4. 深度优先搜索(DFS)5. 链地址法或开放地址法三、简答题6. 简述排序算法中的快速排序算法的基本原理。
答案:快速排序算法是一种分治算法,它通过选择一个元素作为“基准”,然后将数组分为两个子数组,一个包含小于基准的元素,另一个包含大于基准的元素。
然后对这两个子数组递归地应用快速排序算法。
7. 解释什么是递归,并给出一个递归函数的例子。
答案:递归是一种在函数中调用自身的编程技术。
递归函数必须有一个明确的终止条件,以避免无限递归。
例如,计算阶乘的递归函数如下:```int factorial(int n) {if (n == 0) return 1; // 终止条件return n * factorial(n - 1); // 递归调用}```四、编程题8. 编写一个函数,实现单链表的反转。
答案:```c// 假设ListNode是链表节点的定义ListNode* reverseList(ListNode* head) {ListNode* prev = NULL;ListNode* curr = head;ListNode* next = NULL;while (curr != NULL) {next = curr->next; // 保存下一个节点curr->next = prev; // 反转指针prev = curr; // 移动prevcurr = next; // 移动curr}return prev; // 新的头节点}```9. 给定一个整数数组,请实现一个函数来找到数组中的最长连续子序列的长度。
数据结构1800题(答案全)一、选择题1. 算法的计算量的大小称为计算的(B )。
【北京邮电大学2000二、3 (20/8分)】A.效率 B. 复杂性 C. 现实性 D. 难度2. 算法的时间复杂度取决于(C )【中科院计算所1998 二、1 (2分)】A.问题的规模 B. 待处理数据的初态 C. A和B3.计算机算法指的是(1),它必须具备(2)这三个特性。
(1) A.计算方法 B. 排序方法 C. 解决问题的步骤序列 D. 调度方法(2) A.可执行性、可移植性、可扩充性 B. 可执行性、确定性、有穷性C. 确定性、有穷性、稳定性D. 易读性、稳定性、安全性【南京理工大学1999 一、1(2分)【武汉交通科技大学1996 一、1(4分)】4.一个算法应该是()。
【中山大学1998 二、1(2分)】A.程序B.问题求解步骤的描述C.要满足五个基本特性D.A 和C.5. 下面关于算法说法错误的是()【南京理工大学2000 一、1(1.5分)】A.算法最终必须由计算机程序实现B.为解决某问题的算法同为该问题编写的程序含义是相同的C. 算法的可行性是指指令不能有二义性D. 以上几个都是错误的6. 下面说法错误的是()【南京理工大学2000 一、2 (1.5分)】(1)算法原地工作的含义是指不需要任何额外的辅助空间(2)在相同的规模n下,复杂度O(n)的算法在时间上总是优于复杂度O(2n)的算法(3)所谓时间复杂度是指最坏情况下,估算算法执行时间的一个上界(4)同一个算法,实现语言的级别越高,执行效率就越低A.(1) B.(1),(2) C.(1),(4) D.(3)7.从逻辑上可以把数据结构分为()两大类。
【武汉交通科技大学1996 一、4(2分)】A.动态结构、静态结构B.顺序结构、链式结构C.线性结构、非线性结构D.初等结构、构造型结构8.以下与数据的存储结构无关的术语是()。
【北方交通大学2000 二、1(2分)】A.循环队列 B. 链表 C. 哈希表 D. 栈9.以下数据结构中,哪一个是线性结构()?【北方交通大学2001 一、1(2分)】A.广义表 B. 二叉树 C. 稀疏矩阵 D. 串10.以下那一个术语与数据的存储结构无关?()【北方交通大学2001 一、2(2分)】A.栈 B. 哈希表 C. 线索树 D. 双向链表11.在下面的程序段中,对x的赋值语句的频度为()【北京工商大学2001 一、10(3分)】FOR i:=1 TO n DOFOR j:=1 TO n DOx:=x+1;A.O(2n) B.O(n) C.O(n2) D.O(log2n)12.程序段FOR i:=n-1 DOWNTO 1 DOFOR j:=1 TO i DOIF A[j]>A[j+1]THEN A[j]与A[j+1]对换;其中n为正整数,则最后一行的语句频度在最坏情况下是()A. O(n)B. O(nlogn)C. O(n3)D. O(n2) 【南京理工大学1998一、1(2分)】13.以下哪个数据结构不是多型数据类型()【中山大学1999 一、3(1分)】A.栈B.广义表C.有向图D.字符串14.以下数据结构中,()是非线性数据结构【中山大学1999 一、4】A.树B.字符串C.队D.栈15. 下列数据中,()是非线性数据结构。
数据结构的试题及答案一、选择题1. 在数据结构中,线性表的顺序存储方式被称为:A. 栈B. 队列C. 链表D. 数组答案:D2. 以下哪种数据结构是动态数据结构?A. 数组B. 链表C. 栈D. 队列答案:B3. 树的度是树内所有节点的度的最大值,树的深度是树的最长路径上的节点数。
以下哪个选项正确描述了树的度和深度?A. 度是节点的最大值,深度是路径上节点数B. 度是路径上节点数,深度是节点的最大值C. 度是节点的最大值,深度是节点的最大值D. 度是路径上节点数,深度是路径上节点数答案:A二、简答题1. 请简述链表和数组的区别。
答案:链表和数组是两种不同的数据存储方式。
数组是连续的内存空间,可以通过索引快速访问元素,但插入和删除操作可能需要移动大量元素。
链表由一系列节点组成,每个节点包含数据部分和指向下一个节点的指针,链表的插入和删除操作不需要移动其他元素,但访问特定元素需要从头开始遍历。
2. 什么是二叉搜索树?它有哪些特点?答案:二叉搜索树(BST)是一种特殊的二叉树,其中每个节点的值都大于或等于其左子树中的任何节点的值,并且小于或等于其右子树中的任何节点的值。
BST的主要特点是它支持快速的查找、插入和删除操作,时间复杂度为O(log n)。
三、计算题1. 给定一个链表,编写一个算法来删除链表中的重复元素。
答案:以下是删除链表中重复元素的算法步骤:- 遍历链表,使用一个哈希表来记录已经遇到的元素。
- 当遍历到一个新元素时,检查它是否已经在哈希表中。
- 如果已经存在,删除当前节点,并继续遍历。
- 如果不存在,将元素添加到哈希表中,并继续遍历。
- 完成遍历后,链表中的重复元素将被删除。
2. 假设有一个二叉搜索树,编写一个算法来找到树中第k小的元素。
答案:以下是找到二叉搜索树中第k小元素的算法步骤:- 从根节点开始,使用中序遍历(左-根-右)。
- 遍历过程中,记录访问的节点数量。
- 当访问到第k个节点时,该节点即为所求的第k小的元素。
数据结构试题及答案一、单项选择题(每题2分,共20分)1. 在数据结构中,线性结构的特点是()。
A. 元素之间存在一对一关系B. 元素之间存在一对多关系C. 元素之间存在多对多关系D. 元素之间存在一对一或多对多关系答案:A2. 栈(Stack)是一种特殊的线性表,其特点是()。
A. 只能在一端进行插入和删除操作B. 只能在一端进行插入操作,另一端进行删除操作C. 两端都可以进行插入和删除操作D. 只能在一端进行删除操作,另一端进行插入操作答案:B3. 在二叉树中,度为2的节点数为n,叶子节点数为m,则该二叉树的总节点数为()。
A. n + mB. n + m - 1C. 2n + m - 1D. 2m - n + 1答案:B4. 哈希表解决冲突的方法不包括()。
A. 开放定址法B. 链地址法C. 再哈希法D. 排序法答案:D5. 以下哪个算法不是排序算法()。
A. 快速排序B. 归并排序C. 深度优先搜索D. 堆排序答案:C6. 在图的遍历中,深度优先搜索(DFS)使用的是()。
A. 栈B. 队列C. 链表D. 数组答案:A7. 以下哪个数据结构不是树形结构()。
A. 二叉树B. B树C. 哈夫曼树D. 链表答案:D8. 在数据库中,索引的作用是()。
A. 存储数据B. 快速检索数据C. 排序数据D. 压缩数据答案:B9. 以下哪个算法适用于解决图的最短路径问题()。
A. 迪杰斯特拉算法B. 快速排序算法C. 克鲁斯卡尔算法D. 普里姆算法答案:A10. 以下哪个选项是图的邻接矩阵表示法的特点()。
A. 只能表示无向图B. 只能表示有向图C. 可以表示无向图和有向图D. 不能表示带权图答案:C二、填空题(每题2分,共20分)1. 在数据结构中,一个算法的时间复杂度为O(n^2),表示该算法的时间复杂度是随着输入数据规模的增加而______增加。
答案:二次方2. 线性表的两种存储结构是顺序存储结构和______存储结构。
一、选择题1. 算法的计算量的大小称为计算的( B )。
【北京邮电大学2000 二、3 (20/8分)】A.效率 B. 复杂性 C. 现实性 D. 难度2. 算法的时间复杂度取决于(C )【中科院计算所 1998 二、1 (2分)】A.问题的规模 B. 待处理数据的初态 C. A和B3.计算机算法指的是(1),它必须具备(2)这三个特性。
(1) A.计算方法 B. 排序方法 C. 解决问题的步骤序列 D. 调度方法(2) A.可执行性、可移植性、可扩充性 B. 可执行性、确定性、有穷性C. 确定性、有穷性、稳定性D. 易读性、稳定性、安全性【南京理工大学 1999 一、1(2分)【武汉交通科技大学 1996 一、1( 4分)】4.一个算法应该是()。
【中山大学 1998 二、1(2分)】A.程序 B.问题求解步骤的描述 C.要满足五个基本特性 D.A和C.5. 下面关于算法说法错误的是()【南京理工大学 2000 一、1(1.5分)】A.算法最终必须由计算机程序实现B.为解决某问题的算法同为该问题编写的程序含义是相同的C. 算法的可行性是指指令不能有二义性D. 以上几个都是错误的6. 下面说法错误的是()【南京理工大学 2000 一、2 (1.5分)】(1)算法原地工作的含义是指不需要任何额外的辅助空间(2)在相同的规模n下,复杂度O(n)的算法在时间上总是优于复杂度O(2n)的算法(3)所谓时间复杂度是指最坏情况下,估算算法执行时间的一个上界(4)同一个算法,实现语言的级别越高,执行效率就越低A.(1) B.(1),(2) C.(1),(4) D.(3)7.从逻辑上可以把数据结构分为()两大类。
【武汉交通科技大学 1996 一、4(2分)】A.动态结构、静态结构 B.顺序结构、链式结构C.线性结构、非线性结构 D.初等结构、构造型结构8.以下与数据的存储结构无关的术语是()。
【北方交通大学 2000 二、1(2分)】A.循环队列 B. 链表 C. 哈希表 D. 栈9.以下数据结构中,哪一个是线性结构()?【北方交通大学 2001 一、1(2分)】A.广义表 B. 二叉树 C. 稀疏矩阵 D. 串10.以下那一个术语与数据的存储结构无关?()【北方交通大学 2001 一、2(2分)】A.栈 B. 哈希表 C. 线索树 D. 双向链表11.在下面的程序段中,对x的赋值语句的频度为()【北京工商大学 2001 一、10(3分)】FOR i:=1 TO n DOFOR j:=1 TO n DOx:=x+1;A. O(2n) B.O(n) C.O(n2) D.O(log2n)12.程序段 FOR i:=n-1 DOWNTO 1 DOFOR j:=1 TO i DOIF A[j]>A[j+1]THEN A[j]与A[j+1]对换;其中 n为正整数,则最后一行的语句频度在最坏情况下是()A. O(n)B. O(nlogn)C. O(n3)D. O(n2) 【南京理工大学1998一、1(2分)】13.以下哪个数据结构不是多型数据类型()【中山大学 1999 一、3(1分)】A.栈 B.广义表 C.有向图 D.字符串14.以下数据结构中,()是非线性数据结构【中山大学 1999 一、4】A.树 B.字符串 C.队 D.栈15. 下列数据中,()是非线性数据结构。
【北京理工大学 2001 六、1(2分)】A.栈 B. 队列 C. 完全二叉树 D. 堆16.连续存储设计时,存储单元的地址()。
【中山大学 1999 一、1(1分)】A.一定连续 B.一定不连续 C.不一定连续 D.部分连续,部分不连续17.以下属于逻辑结构的是()。
【西安电子科技大学应用 2001一、1】A.顺序表 B. 哈希表 C.有序表 D. 单链表二、判断题1. 数据元素是数据的最小单位。
( )【北京邮电大学 1998 一、1(2分)】【青岛大学 2000 一、1 (1分)】【上海交通大学 1998 一、1】【山东师范大学 2001 一、1 (2分)】2. 记录是数据处理的最小单位。
( ) 【上海海运学院 1998 一、5(1分)】3. 数据的逻辑结构是指数据的各数据项之间的逻辑关系;( )【北京邮电大学2002 一、1(1分)】4.算法的优劣与算法描述语言无关,但与所用计算机有关。
( )【大连海事大学 2001 一、10(1分)】5.健壮的算法不会因非法的输入数据而出现莫名其妙的状态。
( )【大连海事大学 2001 一、11(1分)】6.算法可以用不同的语言描述,如果用C 语言或PASCAL语言等高级语言来描述,则算法实际上就是程序了。
( )【西安交通大学 1996 二、7(3分)】7.程序一定是算法。
( )【燕山大学 1998 二、2(2分)并改错】8.数据的物理结构是指数据在计算机内的实际存储形式。
( )【山东师范大学2001 一、2(2分)】9. 数据结构的抽象操作的定义与具体实现有关。
( )【华南理工大学 2002 一、1(1分)】10. 在顺序存储结构中,有时也存储数据结构中元素之间的关系。
( )【华南理工大学 2002 一、2 (1分)】11. 顺序存储方式的优点是存储密度大,且插入、删除运算效率高。
( )【上海海运学院 1999 一、1(1分)】12. 数据结构的基本操作的设置的最重要的准则是,实现应用程序与存储结构的独立。
( )【华南理工大学 2002 一、5(1分)】13. 数据的逻辑结构说明数据元素之间的顺序关系,它依赖于计算机的储存结构. ( )【上海海运学院 1998 一、1(1分)】1.B2.C3.1C3.2B4.B5.D6.C7.C8.D9.D10.A11.C12.D13.D14.A15.C16.A17.C二、判断题1. ×2. ×3.×4.×5. √6. ×7. ×8. √9.×10.×11.×12. √13. ×三、填空1.数据的物理结构包括的表示和的表示。
【燕山大学 1998 一、1(2分)】2. 对于给定的n个元素,可以构造出的逻辑结构有(1),(2),(3),(4)四种。
【中科院计算所 1999 二、1(4分)】3.数据的逻辑结构是指。
【北京邮电大学 2001 二、1(2分)】4.一个数据结构在计算机中称为存储结构。
【华中理工大学 2000 一、1(1分)】5.抽象数据类型的定义仅取决于它的一组__(1)_,而与_(2)_无关,即不论其内部结构如何变化,只要它的_(3)_不变,都不影响其外部使用。
【山东大学 2001 三、3(2分)】6.数据结构中评价算法的两个重要指标是【北京理工大学 2001 七、1(2分)】7. 数据结构是研讨数据的_(1)_和_(2)_,以及它们之间的相互关系,并对与这种结构定义相应的_(3)_,设计出相应的(4)_。
【西安电子科技大学 1998 二、2(3分)】8.一个算法具有5个特性: (1)、(2)、(3),有零个或多个输入、有一个或多个输出。
【华中理工大学 2000 一、2(5分)】【燕山大学 1998 一、2(5分)】9.已知如下程序段FOR i:= n DOWNTO 1 DO {语句1}BEGINx:=x+1; {语句2}FOR j:=n DOWNTO i DO {语句3}y:=y+1; {语句4}END;语句1执行的频度为(1);语句2执行的频度为(2);语句3执行的频度为(3);语句4执行的频度为(4)。
【北方交通大学 1999 二、4(5分)】10.在下面的程序段中,对x的赋值语句的频度为______(表示为n的函数)FOR i:=1 TO n DOFOR j:=1TO i DOFOR k:=1 TO j DOx:=x+delta;【北京工业大学 1999 一、6(2分)】11.下面程序段中带下划线的语句的执行次数的数量级是:【合肥工业大学1999三、1(2分)】i:=1; WHILE i<n DO i:=i*2;12. 下面程序段中带下划线的语句的执行次数的数量级是( )。
【合肥工业大学 2000 三、1(2分)】i:=1;WHILE i<n BEGIN FOR j:=1 TO n DO x:=x+1;i:=i*2 END;13. 下面程序段中带有下划线的语句的执行次数的数量级是( ) 【合肥工业大学 2001三、1(2分)】i:=n*n WHILE i<>1 DO i:=i div 2;14. 计算机执行下面的语句时,语句s的执行次数为 _______ 。
【南京理工大学2000二、1(1.5分)】FOR(i=l;i<n-l;i++)FOR(j=n;j>=i;j--)s;15. 下面程序段的时间复杂度为________。
(n>1)sum=1;for (i=0;sum<n;i++) sum+=1; 【南京理工大学 2001 二、1(2分)】16.设m.n均为自然数,m可表示为一些不超过n的自然数之和,f(m,n)为这种表示方式的数目。
例f(5,3)=5,有5种表示方式:3+2,3+1+1,2+2+1,2+1+1+1,1+1+1+1+1。
①以下是该函数的程序段,请将未完成的部分填入,使之完整int f(m,n)int m,n;{ if(m==1)return (1) ;if(n==1){return (2) ;}if(m<n){return f(m,m);}if (m==n){return 1+ (3) ;}return f(m.n-1)+f(m-n, (4) );}②执行程序,f(6,4)= 。
【中科院软件所 1997 二、1 (9分)】17. 在有n个选手参加的单循环赛中,总共将进行______场比赛。
【合肥工业大学1999三、8(2分)】四、应用题1. 数据结构是一门研究什么内容的学科?【燕山大学 1999 二、1 (4分)】2. 数据元素之间的关系在计算机中有几种表示方法?各有什么特点?【燕山大学1999 二、2(4分)】3. 数据类型和抽象数据类型是如何定义的。
二者有何相同和不同之处,抽象数据类型的主要特点是什么?使用抽象数据类型的主要好处是什么?【北京邮电大学 1994 一(8分)】4. 回答问题(每题2分)【山东工业大学 1997 一(8分)】(1)在数据结构课程中,数据的逻辑结构,数据的存储结构及数据的运算之间存在着怎样的关系?(2)若逻辑结构相同但存储结构不同,则为不同的数据结构。
这样的说法对吗?举例说明之。
(3)在给定的逻辑结构及其存储表示上可以定义不同的运算集合,从而得到不同的数据结构。