浙江大学大数据结构与算法课程自我测试问题详解

合集下载

算法与数据结构试题与答案

算法与数据结构试题与答案

算法与数据结构试题与答案简介算法与数据结构是计算机科学中最重要的基础课程之一。

本文档将提供一系列常见的算法与数据结构试题,并附上答案进行解析。

这些试题适用于计算机科学、软件工程、数据科学等专业的学生,也适用于在求职面试中涉及到算法与数据结构的岗位。

算法1. 寻找最小值请编写一个函数,接收一个整数数组作为参数,返回数组中的最小值。

解答function findMin(arr) {let min = arr[0];for (let i = 1; i < arr.length; i++) {if (arr[i] < min) {min = arr[i];}}return min;}// 测试样例let arr = [8, 6, 7, 5, 3, 0, 9];console.log(findMin(arr)); // 02. 冒泡排序请编写一个函数,接收一个整数数组作为参数,实现冒泡排序算法,并返回排序后的数组。

冒泡排序的基本思想是从头到尾比较相邻两个元素的大小,并交换它们的位置,直到整个数组有序为止。

解答function bubbleSort(arr) {for (let i = 0; i < arr.length - 1; i++) {for (let j = 0; j < arr.length - i - 1; j++) {if (arr[j] > arr[j + 1]) {let temp = arr[j];arr[j] = arr[j + 1];arr[j + 1] = temp;}}}return arr;}// 测试样例let arr = [8, 6, 7, 5, 3, 0, 9];console.log(bubbleSort(arr)); // [0, 3, 5, 6, 7, 8, 9]3. 快速排序请编写一个函数,接收一个整数数组作为参数,实现快速排序算法,并返回排序后的数组。

浙大计算机面试题库及答案

浙大计算机面试题库及答案

浙大计算机面试题库及答案一、算法与数据结构1. 请简述什么是最短路径算法,并列举几种常见的最短路径算法。

最短路径算法是用来寻找两个节点之间最短路径的一种算法。

常见的最短路径算法包括迪杰斯特拉算法(Dijkstra)、弗洛伊德算法(Floyd-Warshall)、贝尔曼-福特算法(Bellman-Ford)等。

2. 请解释什么是动态规划,并简要介绍动态规划的实现步骤。

动态规划是将一个大问题分解为若干个子问题,并通过保存子问题的解来降低求解复杂度的一种算法思想。

实现步骤包括定义状态、确定状态转移方程、确定初始条件和计算顺序。

二、操作系统1. 什么是进程和线程,它们之间有什么区别?进程是操作系统中资源分配的最小单位,是运行程序的载体,拥有独立的内存空间和执行环境;而线程是进程中的一个执行单元,与其他线程共享进程的资源,拥有独立的执行流程。

区别:- 进程间资源相互独立,线程间资源共享;- 进程拥有独立的地址空间,线程共享进程的地址空间;- 进程间切换开销比较大,线程间切换开销较小。

2. 请解释什么是死锁,并列举避免死锁的方法。

死锁是指系统中的进程或线程因为互相等待对方所持有的资源而无法继续执行的一种状态。

避免死锁的方法包括:资源分级法、资源有序性法、银行家算法、避免环路法等。

三、网络1. 简述HTTP和HTTPS的区别。

HTTP(Hypertext Transfer Protocol)是一种用于传输超文本的应用层协议,明文传输,安全性较低;而HTTPS(Hypertext Transfer Protocol Secure)是基于HTTP协议的一种安全的传输协议,通过SSL/TLS加密数据传输,保证数据的安全性。

2. 请解释什么是TCP/IP协议栈,并介绍TCP和UDP的区别。

TCP/IP协议栈是一组用于互联网中数据通信的网络协议的集合。

它由多层协议构成,包括物理层、数据链路层、网络层、传输层和应用层。

TCP(Transmission Control Protocol)是一种面向连接、可靠传输的协议,提供错误检测和重传机制,适用于对数据可靠性要求较高的场景;而UDP(User Datagram Protocol)是一种无连接、不可靠传输的协议,不提供错误检测和重传机制,适用于对实时性要求较高的场景。

浙江大学大数据结构与算法课程自我测试问题详解

浙江大学大数据结构与算法课程自我测试问题详解

窗体顶端1. 邻接表是图的一种____。

正确答案点评A 顺序存储结构B 链式存储结构C 索引存储结构D 散列存储结构正确答案:B答案讲解:无【试题出处】第6章第3节1窗体底端窗体顶端2. 一组记录的关键字为(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,79正确答案:C窗体底端窗体顶端3. 设深度为h的二叉树上只有度为0和度为2的结点,则此类二叉树中所包含的结点数至多为_____(注意C和D中h是指数)。

正确答案点评A 2h-1B 2(h-1)C 2*h-1D 2*h正确答案:A窗体底端窗体顶端4. 一个栈的入栈序列是a,b,c,d, 则下列序列中不可能的输出序列是_______。

正确答案点评A acbdB dcbaC acdbD dbac正确答案:D窗体底端窗体顶端5. 计算机算法是指______。

正确答案点评A 计算方法B 排序方法C 调度方法D 解决问题的有限运算序列正确答案:D窗体底端窗体顶端6. 关于二叉树的三种遍历,下列说法正确的是____。

正确答案点评A 任意两种遍历序列都不可以唯一决定该二叉树B 任意两种遍历序列都可以唯一决定该二叉树C 先序遍历序列和后序遍历序列可以唯一决定该二叉树D 先序遍历序列和中序遍历序列可以唯一决定该二叉树正确答案:D窗体底端窗体顶端7. 顺序表的特点是______。

正确答案点评A 逻辑上相邻的结点其物理位置不相邻B 逻辑上相邻的结点其物理位置亦相邻C 顺序表不是随机存储结构D 在顺序表中插入和删除操作比在链表上方便正确答案:B窗体底端窗体顶端8. 设散列表长为14,散列函数是H(key)=key%11,表中已有数据的关键字为15,38,61,84共四个,现要将关键字为49的结点加到表中,用二次探测法解决冲突,则放入的位置是____________。

大数据解析与应用导论知到章节答案智慧树2023年浙江大学

大数据解析与应用导论知到章节答案智慧树2023年浙江大学

大数据解析与应用导论知到章节测试答案智慧树2023年最新浙江大学第一章测试1.下列属于多元统计方法的为()参考答案:回归分析;主元分析2.多元统计分析的图表示法有()参考答案:散布图矩阵;调和曲线图;轮廓图;雷达图3.完整的数据分析过程,包括数据采集、数据清洗和数据分析。

()参考答案:对4.下列场景适用于回归分析的是 ( )参考答案:天气预报5.下面哪一句体现了主元分析的思想()参考答案:牵牛要牵牛鼻子第二章测试1.一般常见的缺失值处理的方法有()参考答案:回归填充法;最近邻插补填充法;插值填充;替换填充法2.一般常见的数据归一化的方法有()参考答案:最小最大规范化;零均值规范化3.少量的异常值完全不会影响数据分析。

()参考答案:错4.下列哪种方法不是数据填补的手段 ( )参考答案:均值标准化5.主成分分析的英文名是()。

参考答案:Principal Component Analysis第三章测试1.下面哪个是SVM在实际生活中的应用()参考答案:图片分类;邮件分类2.以下说法正确的有哪些()参考答案:SVM是一种线性方法;软间隔的引入可以解决轻度线性不可分问题3.拉格朗日乘子法可用于线性可分SVM的模型求解。

()参考答案:对4.SVM的中文全称叫什么?()参考答案:支持向量机5.SVM算法的最小时间复杂度是O(n²),基于此,以下哪种规格的数据集并不适该算法?()参考答案:大数据集第四章测试1.一元线性回归有哪些基本假定?()参考答案:解释变量X是确定性变量,Y是随机变量;;随机误差项和解释变量X不相关;;随机误差项服从零均值、同方差的正态分布。

;随机误差项具有零均值、同方差和序列不相关的性质;2.最典型的两种拟合不佳的情况是()。

参考答案:欠拟合;过拟合3.岭回归适用于样本很少,但变量很多的回归问题。

()参考答案:对4.最小二乘方法的拟合程度衡量指标是()。

参考答案:残差平方和5.关于最小二乘法,下列说法正确的是。

2022年浙大城市学院计算机科学与技术专业《数据结构与算法》科目期末试卷A(有答案)

2022年浙大城市学院计算机科学与技术专业《数据结构与算法》科目期末试卷A(有答案)

2022年浙大城市学院计算机科学与技术专业《数据结构与算法》科目期末试卷A(有答案)一、选择题1、哈希文件使用哈希函数将记录的关键字值计算转化为记录的存放地址,因为哈希函数是一对一的关系,则选择好的()方法是哈希文件的关键。

A.哈希函数B.除余法中的质数C.冲突处理D.哈希函数和冲突处理2、设有一个10阶的对称矩阵A,采用压缩存储方式,以行序为主存储, a11为第一元素,其存储地址为1,每个元素占一个地址空间,则a85的地址为()。

A.13B.33C.18D.403、计算机算法指的是解决问题的步骤序列,它必须具备()三个特性。

A.可执行性、可移植性、可扩充性B.可执行性、确定性、有穷性C.确定性、有穷性、稳定性D.易读性、稳定性、安全性4、在用邻接表表示图时,拓扑排序算法时间复杂度为()。

A.O(n)B.O(n+e)C.O(n*n)D.O(n*n*n)5、有六个元素6,5,4,3,2,1顺序入栈,下列不是合法的出栈序列的是()。

A.543612B.453126C.346521D.2341566、若一棵二叉树的前序遍历序列为a,e,b,d,c,后序遍历序列为b, c,d,e,a,则根结点的孩子结点()。

A.只有e B.有e、b C.有e、c D.无法确定7、下列关于无向连通图特性的叙述中,正确的是()。

Ⅰ.所有的顶点的度之和为偶数Ⅱ.边数大于顶点个数减1 Ⅲ.至少有一个顶点的度为1A.只有Ⅰ B.只有Ⅱ C.Ⅰ和Ⅱ D.Ⅰ和Ⅲ8、已知一棵二叉树的前序遍历结果为ABCDEF,中序遍历结果为CBAEDF,则后序遍历结果为()。

A.CBEFDAB.FEDCBAC.CBEDFAD.不定9、每个结点的度或者为0或者为2的二叉树称为正则二叉树。

n个结点的正则二叉树中有()个叶子。

A.log2nB.(n-1)/2C.log2n+1D.(n+1)/210、在文件“局部有序”或文件长度较小的情况下,最佳内部排序的方法是()。

数据结构与算法 试题及答案

数据结构与算法 试题及答案

数据结构与算法试题及答案数据结构与算法试题及答案在计算机科学领域,数据结构与算法是非常重要的基础知识。

数据结构是一种组织和存储数据的方式,而算法则是解决问题的方法和步骤。

掌握好数据结构与算法,有助于提高程序的运行效率和解决实际问题。

下面是一些关于数据结构与算法的试题及其答案,希望能够帮助大家更好地理解和应用这方面的知识。

试题一:什么是数据结构?请举例说明。

答案一:数据结构是一种组织和存储数据的方式。

它可以使数据的操作更加高效。

常见的数据结构有数组、链表、栈、队列、树和图等。

举个例子,数组是一种线性数据结构,可以存储一组相同类型的元素。

试题二:什么是算法?请举例说明。

答案二:算法是一种解决问题的方法和步骤。

它是一个精确的描述,用于解决特定问题。

常见的算法有排序算法、查找算法、递归算法等。

例如,冒泡排序算法是一种比较简单的排序算法,通过不断交换相邻元素的位置来达到排序的目的。

试题三:什么是时间复杂度和空间复杂度?答案三:时间复杂度和空间复杂度是衡量算法性能的两个指标。

时间复杂度是指算法执行所需要的时间,通常用大O符号表示。

空间复杂度是指算法执行所需要的额外空间,通常也用大O符号表示。

它们都是描述算法随着输入规模增大而变化的趋势。

试题四:介绍一下常见的数据结构和相应的操作。

答案四:常见的数据结构有数组、链表、栈、队列、树和图等。

- 数组是一种线性数据结构,可以随机访问元素,并且在插入和删除元素时需要移动其他元素。

- 链表是一种动态数据结构,不需要固定的内存空间,但只能通过指针进行元素的访问。

- 栈是一种后进先出(LIFO)的数据结构,只能在栈顶进行插入和删除元素的操作。

- 队列是一种先进先出(FIFO)的数据结构,只能在队尾插入元素,在队头删除元素。

- 树是一种非线性数据结构,由节点和指向子节点的边组成。

常见的树有二叉树、二叉搜索树和AVL树等。

- 图是一种复杂的数据结构,由节点和边组成,可以表示各种关系。

2014浙江省数据结构与算法考试技巧、答题原则

2014浙江省数据结构与算法考试技巧、答题原则
A)3,2,5,6,4,1 B)1,5,4,6,2,3
C)2,4,3,5,1,6 D)4,5,3,6,2,1
9、二叉树第i(i≥1)层上至多有( C )结点。
A)2i B)2i C)2i-1 D)2i-1
10、下面关于线性表的叙述中,错误的是哪一个?( D )
C)loc(A1)+i*c+1 D)loc(A1)+(i+1)*c
27、链式存储的存储结构所占存储空间( A )。
A)分两部分,一部分存放结点值,另一部分存放表示结点间关系的指针
B)只有一部分,存放结点值
C)只有一部分,存储表示结点间关系的指针
D)分两部分,一部分存放结点值,另一部分存放结点所占单元数
A)数据的逻辑结构 B)数据的存储结构
C)建立在相应逻辑结构和存储结构上的算法 D)包括以上三个方面
37、在数据结构中,从逻辑上可以把数据结构分为( C )。
A)动态结构和静态结构 B)紧凑结构和非紧凑结构
C)线性结构和非线性结构 D)内部结构和外部结构
C)一个最大值 D)一个均方值
35、倘若在对串的插入、删除运算中,期望运算速度最快,则应采用( C )。
A)顺序表示法 B)单字符为结点的单链表表示法
C)等量分块表示法 D)不等量分块表示法
36、数据结构研究的内容是( D )。
A) (G) B) (D) C) C D) D
38、下列序列中,执行第一趟快速排序后得到的序列是( A )。
A)[d,a,e,d,b]f[h,g] B) [c,e,a,d]f[h,g,b]
C) [g,a,e,c,b]f[d,h] D) [a,b,c,d,]f[e,g,h]

浙大计算机面试题及答案

浙大计算机面试题及答案

浙大计算机面试题及答案一、数据结构与算法1. 请解释什么是数据结构,并列举几种常见的数据结构。

数据结构是计算机中对数据的组织、存储和管理的方式。

常见的数据结构包括数组、链表、堆栈、队列、树、图等。

2. 请解释什么是算法,并列举几种常见的算法。

算法是解决问题的一系列步骤或指令。

常见的算法包括排序算法(如冒泡排序、快速排序)、查找算法(如二分查找)、图算法(如最短路径算法)等。

3. 请解释什么是时间复杂度和空间复杂度。

时间复杂度是衡量算法执行时间随输入规模增长而增长的速度。

常用的时间复杂度有O(1)(常数时间复杂度)、O(log n)(对数时间复杂度)、O(n)(线性时间复杂度)、O(n^2)(平方时间复杂度)等。

空间复杂度是衡量算法执行所需内存空间随输入规模增长而增长的速度。

常用的空间复杂度有O(1)(常数空间复杂度)、O(n)(线性空间复杂度)等。

4. 请解释什么是动态规划算法,并给出一个实际的应用场景。

动态规划是将复杂问题分解为子问题,并记录子问题的解,避免重复计算,从而提高算法效率的一种算法思想。

一个实际的应用场景是求解最长公共子序列问题,即找出两个序列中最长的公共子序列。

5. 请解释什么是贪心算法,并给出一个实际的应用场景。

贪心算法是一种每步选择当前最优解的算法思想。

一个实际的应用场景是求解零钱找零问题,即用最少数量的硬币找零。

二、操作系统与网络1. 请解释什么是操作系统,并列举几种常见的操作系统。

操作系统是计算机系统的核心软件,负责管理计算机硬件资源、提供用户接口和运行应用程序等。

常见的操作系统有Windows、Linux、Unix、macOS等。

2. 请解释什么是进程和线程,并解释二者的区别。

进程是程序在操作系统中的一次执行过程,具有独立的地址空间和资源。

线程是进程的一个执行单元,多个线程共享进程的资源。

区别在于进程是独立的执行单位,而线程是进程内的执行单位。

3. 请解释什么是虚拟内存,并解释其作用。

模拟题数据结构与算法答案及评分标准

模拟题数据结构与算法答案及评分标准

课程考核参考答案及评分标准考试课程:数据结构与算法模拟试题 学年学期:20XX-20XX 学年第1学期 试卷类型:X 考试用时:120分钟适用专业:数学与计算机学院计算机科学与技术(软件)专业XXXX 级 层次:本科一、选择题(每小题2分,共30分)二、判断题(每小题1.5分,共9分)三、填空题(每空1分,共25分)1、集合、线性结构、树型结构、图状结构2、时间复杂度、空间复杂度3、p->next!=NULL4、n-i+1、n-i5、2,3、1006H6、表中的数据元素全部是字符,通常是一个串整体作为操作对象7、串长相等、对应字符相等8、2i-1、(n+1)/2、(n-1)/29、2n 、n-1、n+1 10、n(n-1)/2、n(n-1)11、邻接矩阵、邻接链表12、{D,Q,F,X,A,P,B,N,M,Y ,C,W}四、设有数据结构(D ,R ),其中D={1, 2, 3, 4, 5, 6},R={<1,2>,<2,3>,<2,4>,<3,4>,<3,5>,<3,6>,<4,5>,<4,6>}。

试画出其逻辑结构图并指出属于何种结构。

(5分) 解答:属于图状结构五、将下面图1所示的树转换为二叉树,图2所示的二叉树转换为树或森林。

(6分) 解答:图1转换成的二叉树图2所示的二叉树转换成的森林六、对给定的一组权值W =(5,2,9,11,8,3,7),试构造相应的哈夫曼树,并计算它的带权路径长度,并写出各个权对应的哈夫曼编码。

(6分) 解答:构造的哈夫曼树如图3图3树的带权路径长度为: WPL=2×4+3×4+5×3+7×3+8×3+9×2+11×2=120 各个权对应的哈夫曼编码: 5(001),2(1111),9(10),11(11),8(101),3(1110),7(100)七、图3所示是一个无向带权图,请分别按Prim 算法求最小生成树,并计算生成树的代价。

浙大远程数据结构与算法离线答案-最完整版DOC

浙大远程数据结构与算法离线答案-最完整版DOC

浙江大学远程教育学院《数据结构与算法》课程离线作业一、填空题:(【序号,章,节】。

)【1,1,2】线性结构中元素之间存在一对一关系,树形结构中元素之间存在一对多关系,图形结构中元素之间存在多对多关系。

【2,1,2】为了最快地存取数据元素,物理结构宜采用序存储结构。

3,1,2】数据结构的三要素是逻辑结构,物理结构,操作。

【3,1,2】存储结构可根据数据元素在机器中的位置是否一定连续分为顺序存储结构,链式存储结构。

【4,1,3】度量算法效率可通过时间复杂度和空间复杂度__来进行。

【5,1,3】设n 为正整数,下面程序段中前置以记号@的语句的频度是n(n+1)/2。

for (i=0; i<n; i++){for (j=0; j<n; j++)if (i+j==n-1)@ a[i][j]=0;}【6,1,3】设n 为正整数,试确定下列各程序段中前置以记号@的语句的频度:(1) i=1; k=0;while (i<=n-1){i++;@ k+=10 * i; // 语句的频度是_____ n-1_______________。

}(2) k=0;for (i=1; i<=n; i++){for (j=i; j<=n; j++)1@ k++; // 语句的频度是_____ n(n+1)/2________________。

}【7,3,2】线性表(a1,a2,…,a n)有两种存储结构:顺序存储结构和链式存储结构,请就这两种存储结构完成下列填充:_顺序存储结构__ 存储密度较大;_顺序存储结构___存储利用率较高;_顺序存储结构___可以随机存取;_链式存储结构____不可以随机存取;__链式存储结构__插入和删除操作比较方便。

【8,3,2】从一个长度为n的顺序表中删除第i个元素(1≤i≤n)时,需向前移动n-i个元素。

【9,3,2】带头结点的单链表Head为空的条件是____ Head->next==null_____【10,3,2】在一个单链表中p所指结点(p所指不是最后结点)之后插入一个由指针s所指结点,应执行s->next=__ p->next___;和p->next=___s _____的操作。

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

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

2022年浙江大学计算机科学与技术专业《数据结构与算法》科目期末试卷A(有答案)一、选择题1、将线性表的数据元素进行扩充,允许带结构的线性表是()。

A.串B.树C.广义表D.栈2、哈希文件使用哈希函数将记录的关键字值计算转化为记录的存放地址,因为哈希函数是一对一的关系,则选择好的()方法是哈希文件的关键。

A.哈希函数B.除余法中的质数C.冲突处理D.哈希函数和冲突处理3、静态链表中指针表示的是()。

A.下一元素的地址B.内存储器的地址C.下一元素在数组中的位置D.左链或右链指向的元素的地址4、循环队列A[0..m-1]存放其元素值,用front和rear分别表示队头和队尾,则当前队列中的元素数是()。

A.(rear-front+m)%mB.rear-front+1C.rear-front-1D.rear-front5、在下列表述中,正确的是()A.含有一个或多个空格字符的串称为空格串B.对n(n>0)个顶点的网,求出权最小的n-1条边便可构成其最小生成树C.选择排序算法是不稳定的D.平衡二叉树的左右子树的结点数之差的绝对值不超过l6、下列选项中,不能构成折半查找中关键字比较序列的是()。

A.500,200,450,180 B.500,450,200,180C.180,500,200,450 D.180,200,500,4507、已知关键字序列5,8,12,19,28,20,15,22是小根堆(最小堆),插入关键字3,调整后的小根堆是()。

A.3,5,12,8,28,20,15,22,19B.3,5,12,19,20,15,22,8,28C.3,8,12,5,20,15,22,28,19D.3,12,5,8,28,20,15,22,198、下述二叉树中,哪一种满足性质:从任一结点出发到根的路径上所经过的结点序列按其关键字有序()。

A.二叉排序树B.哈夫曼树C.AVL树D.堆9、一棵哈夫曼树共有215个结点,对其进行哈夫曼编码,共能得到()个不同的码字。

浙大计算机面试题及答案

浙大计算机面试题及答案

浙大计算机面试题及答案一、简答题1. 请简述什么是数据结构中的“栈”及其基本操作。

答案:栈是一种后进先出(LIFO)的数据结构,其基本操作包括:- push:将元素压入栈顶。

- pop:从栈顶移除元素。

- peek/top:查看栈顶元素但不移除。

- isEmpty:检查栈是否为空。

2. 描述一下什么是计算机网络中的“TCP/IP协议”。

答案:TCP/IP协议是一组用于互联网上的计算机之间通信的协议。

它包括传输控制协议(TCP)和互联网协议(IP)两个主要部分。

TCP负责在两个网络实体间建立、维护和终止连接,确保数据的可靠传输;而IP则负责在网络中进行数据包的寻址和路由。

二、编程题1. 给定一个整数数组,请编写一个函数,找出数组中第二大的数。

```pythondef find_second_max(nums):max1 = max2 = float('-inf')for num in nums:if num > max1:max2 = max1max1 = numelif num > max2 and num != max1:max2 = numreturn max2```2. 编写一个函数,实现字符串的反转。

```pythondef reverse_string(s):return s[::-1]```三、案例分析题1. 描述一下在软件开发过程中,如何进行有效的版本控制。

答案:有效的版本控制可以通过以下步骤实现:- 使用版本控制系统(如Git)来跟踪代码的变更历史。

- 定期提交更改,并为每次提交编写清晰的提交信息。

- 创建分支来开发新功能或修复bug,以避免影响主分支。

- 进行代码审查,确保代码质量和一致性。

- 合并分支前进行充分的测试,确保新代码不会引入错误。

2. 请分析在分布式系统中,CAP定理的含义及其对系统设计的影响。

答案:CAP定理指的是分布式系统中的一致性(Consistency)、可用性(Availability)和分区容错性(Partition tolerance)三者不可兼得。

数据结构考试题库(含参考答案)

数据结构考试题库(含参考答案)

第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) 的算法在时间上总是优于复杂度nO(2 ) 的算法(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:=1TOn DOFOR j:=1TOn DOx:=x+1;A. O(2n)B. O(n)C. O(n2)D. O(logn 2 )12.程序段FOR i:=n-1DOWNTO1DOFOR 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(n 3)D. O(n 2)【南京理工大学 1998 一、 1(2 分 ) 】13.以下哪个数据结构不是多型数据类型()【中山大学1999一、 3( 1 分)】A.栈B.广义表C.有向图D.字符串14.以下数据结构中,()是非线性数据结构【中山大学1999一、 4】A.树B.字符串C.队D.栈15.下列数据中,()是非线性数据结构。

智慧树知到《数据结构与算法》章节测试答案

智慧树知到《数据结构与算法》章节测试答案

智慧树知到《数据结构与算法》章节测试答案第一章1、在数据结构中,从逻辑上可以把数据结构分成()。

A:紧凑结构和非紧凑结构B:线性结构和非线性结构C:内部结构和外部结构D:动态结构和静态结构正确答案:线性结构和非线性结构2、在数据结构中,从存储结构上可以将之分为()。

A:动态结构和静态结构B:顺序存储和非顺序存储C:紧凑结构和非紧凑结构D:线性结构和非线性结构正确答案:顺序存储和非顺序存储3、某算法的时间复杂度是O(n^2),表明该算法的()。

A:执行时间与n^2成正比B:问题规模是n^2C:执行时间等于n^2D:问题规模与n^2成正比正确答案:执行时间与n^2成正比4、在下面的程序段中,x=x+1;的语句频度为()。

for( i=1;i<=n;i++) for( j=1;j<=n;j++) x=x+1;A:O(2n)B:O(n)C:O(n^2)D:O(log2n)正确答案:O(n^2)5、以下数据结构中,()是非线性数据结构。

A:树B:字符串C:队D:栈正确答案:树6、顺序存储,存储单元的地址()。

A:一定连续B:一定不连续C:不一定连续D:部分连续,部分不连续正确答案:一定连续7、评价一个算法性能好坏的重要标准是( )。

A:算法的正确性B:算法易于调试C:算法的时间和空间复杂度D:算法易于理解正确答案:算法的时间和空间复杂度8、若需要利用形式参数直接访问修改实参值,则应将形参说明为()参数。

A:值参数B:实地址C:指针D:地址参数正确答案:指针9、顺序存储方式的优点是存储密度大,且插入、删除运算效率高。

A:对B:错正确答案:错10、数据结构中评价算法的两个重要指标是算法的时间复杂度和空间复杂度。

A:对B:错正确答案:对第二章1、下述哪一条是顺序存储结构的优点()。

A:可方便地用于各种逻辑结构的存储表示B:插入运算方便C:删除运算方便D:存储密度大正确答案:存储密度大3、设某顺序表中第一个元素的地址是se(下标从1开始),每个结点占m个单元,则第i个结点的地址为()。

浙江大学acm答案完整版

浙江大学acm答案完整版

浙江大学acm答案完整版求余运算给出S和M,求0*S%M,1*S%M,2*S%M......(M-1)*S%M能否组成一个集合包含0.1.。

M-1;(这个是原题意改造而来);算法:判断两个数是否互质;or 暴力解决其实暴力完全可以解决这个问题(⊙﹏⊙b),只是其中用数学方法更加高效,巧妙;证明如果S和M互质则满足题意:另G=gcd(S,M);则S=A*G,M=B*G;另X=K*S%M=K*S-T*M(T为整数,满足X属于0到M-1);X=K*A*G-T*B*G;因此取余后的整数一定是G的倍数,G只能取1才能满足条件;充分性的证明:(即当S与M互质,则0到M-1的S倍对M取余一定能遍历0到M-1)只需证明的是,该余数中两两之间互不相等;假设k*S和b*S对M取余相等(k和b∈[0,M),并且k和b不等);则k*S=q1*M+r=q2*M+r=b*S <==> (k-b)*S=M*(q1-q2);S与M互质,由上式子可得M|(k-b),与k和b∈[0,M),并且k和b不等矛盾;因此得证;另外,偶然看到一个很牛叉的辗转相除法;int gcd(int a,int b){while(b) b^=a^=b^=a%=b;return a;}此代码,很好很强大;把涉及位运算的交换的程序加入,便到得这段简洁高效的代码;注:A和B;经过A^=B^=A^=B,结果就得到A和B的交换//////////////////////////// 1000#includeint main(){int a,b,i,;scanf("%d",&a);for(i=1;i<=a;i++){ int sum=0;sum=sum+i;printf("%d\n",sum);}return 0;};1001;#include"stdio.h"int main(){unsigned _int64 n;unsigned _int64 temp;while(scanf("%I64u",&n)!=EOF) //是i 非L{temp=(1+n)*n/2;printf("%I64u\n\n",temp);}return 0;}//////////////////HDU ACM 1014 Uniform Generator 三月22nd, /doc/904868734.html,/showproblem.php?pid=1014这个题目是判断给定的步长和mod,判断所产生的随机数已经覆盖0~mod-1中所有的数,如果是,则说明所选的步长和mod是一个Good choice,否则为bad choice.需要懂得的基本内容为线性同余产生随机数,链接:/doc/904868734.html,/zh-cn/%E7%B7%9A%E6%80%A7%E5%90%8C%E9%A4%98%E6%96 %B9%E6%B3%95Problem DescriptionComputer simulations often require random numbers. One way to generate pseudo-random numbers is via a function of the formseed(x+1) = [seed(x) + STEP] % MODwhere '%' is the modulus operator.Such a function will generate pseudo-random numbers (seed) between 0 and MOD-1. One problem with functions of this form is that they will always generate the same pattern over and over. In order to minimize this effect, selecting the STEP and MOD values carefully can result in a uniform distribution of all values between (and including) 0 and MOD-1.For example, if STEP = 3 and MOD = 5, the function will generate the series of pseudo-random numbers 0, 3, 1, 4, 2 in a repeating cycle. In this example, all of the numbers between and including 0 and MOD-1 will be generated every MOD iterations of the function. Note that by the nature of the function to generate the same seed(x+1) every time seed(x) occurs means that if a function will generate all the numbers between 0 and MOD-1, it will generate pseudo-random numbers uniformly with every MOD iterations.If STEP = 15 and MOD = 20, the function generates the series0, 15, 10, 5 (or any other repeating series if the initial seed is other than 0). This is a poor selection of STEP and MOD because no initial seed will generate all of the numbers from 0 and MOD-1.Your program will determine if choices of STEP and MOD will generate a uniform distribution of pseudo-random numbers.InputEach line of input will contain a pair of integers for STEP and MOD in that order (1 <= STEP, MOD <= 100000).OutputFor each line of input, your program should print the STEP value right- justified in columns 1 through 10, the MOD value right-justified in columns 11 through 20 and either "Good Choice" or "Bad Choice" left-justified starting in column 25. The "Good Choice" message should be printed when the selection of STEP and MOD will generate all the numbers between and including 0 and MOD-1 when MOD numbers are generated. Otherwise, your program should print the message "Bad Choice". After each output test set, your program should print exactly one blank line.Sample Input3 515 2063923 99999Sample Output3 5 Good Choice15 20 Bad Choice63923 99999 Good Choice线性同余方法(LCG)是个产生伪随机数的方法。

浙大远程数据结构与算法模拟卷

浙大远程数据结构与算法模拟卷

《数据结构与算法》模拟卷答案一、判断题(共10小题,每小题1分,共10分,正确的打“√”,错误的打“×”。

答案填写在答题表格中。

)×1、数据元素的逻辑结构相同时物理结构也应该相同。

√2、设n为正整数,则下列算法的时间复杂性是O(log2n)。

sum = 0; do sum += n; while(n=n/2);√3、在n个元素的顺序表中的第i个元素之前插入一个元素,需要移动n-i+1个元素。

×4、线性表的特点是每个元素都有一个前驱和一个后继。

×5、循环队列不存在空间溢出问题。

√6、n(n>0)个结点的树有n-1条边。

√7、满二叉树一定是完全二叉树,反之不然。

√8、树可以看成是连通的图。

×9、5个顶点的无向图最多可能有20条边。

×10、二叉排序树主要用于对数据的排序。

二、单项选择题(共20小题,每小题2分,共40分。

答案填写在答题表格中。

)1、数据结构是研究数据的( D )以及它们之间的相互关系。

A. 理想结构,物理结构B. 理想结构,抽象结构C. 物理结构,逻辑结构D. 抽象结构,逻辑结构2、计算机算法是指( D )。

A.计算方法B.排序方法C.调度方法D.解决问题的有限运算序列3、顺序表的特点是( B )。

A. 逻辑上相邻的结点其物理位置不相邻B. 逻辑上相邻的结点其物理位置亦相邻C. 顺序表不是随机存储结构D. 在顺序表中插入和删除操作比在链表上方便4、线性表按链式方式存储时,每个结点的存储包括( B )两部分。

A.数据值与符号B.数据与指针C.数据与表名D.数据项与符号5、带头结点的单循环链表Head为空表的判定条件是( A ) 。

A. Head->next == HeadB. Head->next == NULLC. Head != NULLD. Head == NULL6、若某堆栈的输入序列为1,2,3,…,n-1,n,输出序列的第1个元素为n,则第i个输出元素为( A )。

浙大pta数据结构与算法题目集

浙大pta数据结构与算法题目集

浙大pta数据结构与算法题目集浙大pta 数据结构与算法题目集浙江大学(Zhejiang University)是中国著名的综合性大学,在计算机领域也拥有着众多的优秀师资和学生。

为了帮助学生更好地掌握数据结构与算法,浙江大学开发了 PTA(Programming Technology Assistant)平台,并在其上建立了一套完整的数据结构与算法题目集。

这个题目集中包含了多个子分类,包括线性表、栈和队列、树和图、查找和排序、字符串、高级数据结构等,涵盖了大部分计算机科学领域的基础知识。

这些题目涉及面广、难度各异,既适合入门者初步学习,也可以供专业人士进行刷题练手。

浙大pta 数据结构与算法题目集具有以下优点:1. 题目质量高:这个题目集是由浙江大学计算机科学与技术学院开发的,每道题目都经过了严格的审核和筛选,保证了其质量和准确性。

2. 题目分类清晰:这个题目集中的题目被分成了多个子分类,每个子分类下还有若干个具体的题目,方便用户根据自己的需求选择合适的练习内容。

3. 同步更新:这个题目集中的题目不定期地进行更新,以适应行业新的发展和技术的变革,保证了学习者的知识储备不过时。

4. 适合多种语言:这个PTA 平台支持多种编程语言,如C++、Java、Python 等,方便用户根据自己的编程基础选择合适的语言进行练习。

在这个题目集中,学生们可以通过多样的题目进行练习,巩固自己已有的知识,并且可以挑战更高难度的题目,提高自己的编程技能和解决实际问题的能力。

对于在数据结构和算法方面自信不够的程序员来说,这个题目集也是一个非常好的选择,可以让他们更深入地了解这个领域的知识,提高自己的编程水平。

总之,浙大pta 数据结构与算法题目集对于计算机领域的学习者来说是一份宝贵的资源,它不仅可以帮助初学者建立起一个坚实的基础,也可以为专业人士提供一个练手的平台。

数据结构与算法面试常见问题解析

数据结构与算法面试常见问题解析

数据结构与算法面试常见问题解析在计算机科学领域,数据结构与算法是非常重要的基础知识,也是面试中经常被考察的内容。

掌握好数据结构与算法,不仅可以帮助我们更好地理解问题,提高编程效率,还能在面试中展现自己的实力。

本文将针对数据结构与算法面试中常见的问题进行解析,希望能够帮助读者更好地准备面试。

一、数组与链表1. 数组与链表的区别是什么?数组是一种线性数据结构,它在内存中占据一段连续的空间,可以通过下标来访问元素,但插入和删除操作效率较低。

链表是一种非连续的数据结构,它通过指针将元素串联起来,插入和删除操作效率较高,但访问元素需要遍历链表。

2. 如何实现一个单链表?单链表由节点组成,每个节点包含数据域和指针域。

通过指针将节点串联起来,形成链表。

在实现单链表时,需要定义节点结构体,实现节点的插入、删除、查找等操作。

3. 如何实现一个循环链表?循环链表是一种特殊的链表,尾节点指向头节点,形成一个环。

在实现循环链表时,需要特别处理头尾节点的指针指向,确保链表的循环性。

4. 数组和链表在存储上有何不同?数组在内存中占据一段连续的空间,可以通过下标直接访问元素,但大小固定。

链表在内存中非连续存储,通过指针串联节点,大小可以动态调整。

二、栈与队列1. 栈和队列的特点是什么?栈是一种后进先出(LIFO)的数据结构,只能在栈顶进行插入和删除操作。

队列是一种先进先出(FIFO)的数据结构,只能在队首和队尾进行插入和删除操作。

2. 如何用数组实现栈和队列?栈可以用数组实现,通过一个指针指向栈顶元素,实现入栈和出栈操作。

队列也可以用数组实现,通过两个指针分别指向队首和队尾,实现入队和出队操作。

3. 栈和队列在应用中有何区别?栈常用于表达式求值、函数调用、括号匹配等场景,队列常用于缓存、调度、广度优先搜索等场景。

4. 栈和队列的时间复杂度是多少?栈和队列的插入和删除操作时间复杂度均为O(1),访问操作时间复杂度为O(n)。

三、排序与查找1. 常见的排序算法有哪些?常见的排序算法包括冒泡排序、选择排序、插入排序、快速排序、归并排序、堆排序等。

数据结构与算法学习习题答案

数据结构与算法学习习题答案

数据结构与算法学习习题答案1. 简介数据结构与算法是计算机科学中非常重要的内容之一。

通过学习数据结构与算法,我们能够更好地理解和解决各种问题,提高程序的效率和性能。

本文将为大家提供一些常见的数据结构与算法习题的答案,帮助大家巩固和加深对该领域的理解和应用。

2. 数组2.1 翻转数组答案:可以使用两个指针,一个指向数组的头部,一个指向尾部,依次交换两个指针所指向的元素,直到两个指针相遇。

2.2 找出数组中的最大值和最小值答案:可以设定两个变量,一个用于保存最大值,一个用于保存最小值,然后遍历整个数组,依次比较每个元素与最大值和最小值的大小,并进行更新。

3. 链表3.1 反转链表答案:可以使用三个指针,分别指向当前节点、前一个节点和后一个节点。

依次将当前节点指向前一个节点,并更新三个指针的位置,直到当前节点变为NULL。

3.2 找出链表中的中间节点答案:可以使用两个指针,一个快指针和一个慢指针,快指针每次移动两个节点,慢指针每次移动一个节点,当快指针到达链表末尾时,慢指针所在的节点就是链表的中间节点。

4. 栈和队列4.1 有效的括号答案:可以使用栈来解决。

遍历字符串,当遇到左括号时,将其压入栈中;当遇到右括号时,判断栈顶元素是否为与之对应的左括号,若是,则弹出栈顶元素,否则返回False。

最后判断栈是否为空,若为空,则返回True,否则返回False。

4.2 设计一个最小栈答案:可以使用两个栈来解决。

一个栈用于保存正常的数据,另一个栈用于保存最小值。

每次插入操作时,同时更新最小值栈中的元素,保证最小值栈的栈顶元素一直为当前栈中的最小值。

5. 树与图5.1 二叉树的遍历答案:有三种常见的二叉树遍历方式:前序遍历、中序遍历和后序遍历。

前序遍历先遍历根节点,然后遍历左子树,最后遍历右子树;中序遍历先遍历左子树,然后遍历根节点,最后遍历右子树;后序遍历先遍历左子树,然后遍历右子树,最后遍历根节点。

5.2 广度优先搜索答案:广度优先搜索是一种图的遍历算法。

算法与数据结构智慧树知到课后章节答案2023年下浙江理工大学

算法与数据结构智慧树知到课后章节答案2023年下浙江理工大学

算法与数据结构智慧树知到课后章节答案2023年下浙江理工大学浙江理工大学绪论单元测试1.学好算法与数据结构的关键在于多多实践。

答案:对第一章测试1.数据结构是()答案:相互之间存在一种或多种特定关系的数据元素的集合2.下列说法错误的是()答案:数据在计算机存储器内的存在形式称为机外表示3.算法的描述方法只有语言方式。

答案:错4.下列关于算法说法错误的是()答案:算法就是数学中的计算方法5.有哪几种存储结构?答案:索引存储方式;散列存储方式;顺序存储方式;链式存储方式6.算法的效率主要是指()答案:算法的空间效率和时间效率7.在数据结构的讨论中把数据结构从逻辑上分为()答案:线性结构与非线性结构8.指出下列程序段的时间复杂度()sum=1;for (i=0;sum<n;i++)sum+=1;答案:O(n)9.树形结构中元素之间存在()关系答案:一对多10.图形结构中元素之间存在()关系答案:多对多第二章测试1.带头结点的单链表head为空的判定条件是()答案:head->next= =NULL2.循环链表的主要优点是()。

答案:在表中任一结点出发都能扫描整个链表3.线性表若采用链式存储结构时,要求内存中可用存储单元的地址()答案:连续或不连续都可以4.若一个线性表中最常用的操作是取第i个元素和找第i个元素的前趋元素,则采用()存储方式最节省时间。

答案:顺序表5.在一个长度为n的顺序表中,在第i个元素之前插入一个新元素时,需向后移动()个元素答案:n-i+16.线性表的顺序存储结构是一种()存储结构。

答案:随机存取7.在双向循环链表中,在p指针所指的结点后插入一个指针q所指向的新结点,修改指针的操作是()。

答案:q->prior=p;q->next=p->next;p->next->prior=q;p->next=q;8.在下列对顺序表进行的操作中,算法时间复杂度为O(1)的是()。

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

窗体顶端1. 邻接表是图的一种____。

正确答案点评A 顺序存储结构B 链式存储结构C 索引存储结构D 散列存储结构正确答案:B答案讲解:无【试题出处】第6章第3节1窗体底端窗体顶端2. 一组记录的关键字为〔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,79正确答案:C窗体底端窗体顶端3. 设深度为h的二叉树上只有度为0和度为2的结点,如此此类二叉树中所包含的结点数至多为_____(注意C和D中h是指数)。

正确答案点评A 2h-1B 2(h-1)C 2*h-1D 2*h正确答案:A窗体底端窗体顶端4. 一个栈的入栈序列是a,b,c,d, 如此如下序列中不可能的输出序列是_______。

正确答案点评A acbdB dcbaC acdbD dbac正确答案:D窗体底端窗体顶端5. 计算机算法是指______。

正确答案点评A 计算方法B 排序方法C 调度方法D 解决问题的有限运算序列正确答案:D窗体底端窗体顶端6. 关于二叉树的三种遍历,如下说法正确的答案是____。

正确答案点评A 任意两种遍历序列都不可以唯一决定该二叉树B 任意两种遍历序列都可以唯一决定该二叉树C 先序遍历序列和后序遍历序列可以唯一决定该二叉树D 先序遍历序列和中序遍历序列可以唯一决定该二叉树正确答案:D窗体底端窗体顶端7. 顺序表的特点是______。

正确答案点评A 逻辑上相邻的结点其物理位置不相邻B 逻辑上相邻的结点其物理位置亦相邻C 顺序表不是随机存储结构D 在顺序表中插入和删除操作比在链表上方便正确答案:B窗体底端窗体顶端8. 设散列表长为14,散列函数是H(key)=key%11,表中已有数据的关键字为15,38,61,84共四个,现要将关键字为49的结点加到表中,用二次探测法解决冲突,如此放入的位置是____________。

正确答案点评A 8B 3C 5D 9正确答案:D窗体底端窗体顶端9. 对顺序存储的线性表,设其长度为n,且在任何位置上插入或删除操作都是等概率的。

如此插入一个元素时平均要移动表中的_____个元素。

正确答案点评A n/2B (n+1)/2C (n-1)/2D n正确答案:A窗体底端窗体顶端10. 树的根本遍历策略可分为先根遍历和后根遍历;二叉树的根本遍历策略可分为先序遍历、中序遍历和后序遍历。

这里我们把由树转化得到的二叉树叫做这棵树对应的二叉树。

那么以下结论中_____是正确的。

正确答案点评A 树的先根遍历序列与其对应的二叉树的先序遍历序列一样B 树的后根遍历序列与其对应的二叉树的后序遍历序列一样C 树的先根遍历序列与其对应的二叉树的中序遍历序列一样D 以上都不对正确答案:A窗体底端窗体顶端11. 在一个无向图中,所有顶点的度数之和等于所有边数的____倍。

正确答案点评A 1/2B 1C 2D 4正确答案:C窗体底端窗体顶端12. 如果某二叉树的先序遍历序列是abdcef,中序遍历序列是dbaefc,如此其后序遍历序列是____。

正确答案点评A dbafecB fecdbaC efcdbaD dbfeca窗体底端窗体顶端13. 向一个有115个元素的顺序表中插入一个新元素并保持原来顺序不变,平均要移动_____个元素。

正确答案点评A 115B 114C 58D 57正确答案:C窗体底端窗体顶端14. 某非空二叉树的前序序列和后序序列正好相反,如此二叉树一定是_____的二叉树。

正确答案点评A 空或只有一个结点B 高度等于其结点数C .任一结点无左孩子D 任一结点无右孩子正确答案:A窗体底端窗体顶端15. 对于一个具有n个顶点和e 条边的无向图,假如采用邻接表表示,邻接表中所有结点总数是_____。

正确答案点评A e/2B 2eC eD n+e窗体底端窗体顶端16. 当字符序列x5y 作为字符堆栈的输入时,输出长度为3的且可以作为C语言标识符的个数是____。

正确答案点评A 3个B 4个C 5个D 6个正确答案:A窗体底端窗体顶端17. 用某种排序方法对线性表(25,84,21,47,15,27,68,35,20)进展排序时,元素序列的变化情况如下(1)20,15,21,25,47,27,68,35,84 (2)15,20,21,25,35,27,47,68,84 (3)15,20,21,25,27,35,47,68,84 如此所采用的排序方法是____ 。

正确答案点评A 选择排序B 希尔排序C 归并排序D 快速排序正确答案:D窗体底端窗体顶端18. 树最适合用来表示_____。

正确答案点评A 有序数据元素B 无序数据元素C 元素之间具有分支层次关系的数据D 元素之间无联系的数据窗体底端窗体顶端19. 设有1000个无序的元素,希望用最快的速度挑选出其中前10个最大的元素,最好____排序法。

正确答案点评A 起泡排序B 快速排序C 堆排序D 基数排序正确答案:C窗体底端窗体顶端20. 如果无向图G必须进展二次广度优先搜索才能访问其所有顶点,如此如下说法中不正确的答案是_____。

正确答案点评A G肯定不是完全图B G一定不是连通图C G中一定有回路D G有2个连通分量正确答案:C窗体底端窗体顶端21. 有m个叶子结点的Huffman树所具有的结点总数为____。

正确答案点评A m+1B 2m-1C 2mD 2m+1窗体底端窗体顶端22. 在顺序表{2、5、7、10、14、15、18、23、35、41、52}中,用二分法查找关键码12需做____次关键码比拟。

正确答案点评A 2B 3C 4D 5正确答案:C窗体底端窗体顶端23. 将10个元素散列到100000个单元的散列表中,如此__________产生冲突。

正确答案点评A 一定会B 一定不会C 仍可能会正确答案:C窗体底端窗体顶端24. 某二叉树的后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历序列是____。

正确答案点评A acbedB decabC deabcD cedba正确答案:D窗体底端窗体顶端25. 一个栈的进栈序列是a,b,c,d,e, 如此栈的不可能的出栈序列是_____。

正确答案点评A edcbaB dceabC decbaD abcde正确答案:B窗体底端窗体顶端26. 10个数据元素为〔54,28,16,34,73,62,95,60,26,43〕,对该数列按从小到大排序,经过一趟冒泡排序后的序列为____。

正确答案点评A 16,28,34,54,73,62,60,26,43,95B 28,16,34,54,62,73,60,26,43,95C 28,16,34,54,62,60,73,26,43,95D 16,28,34,54,62,60,73,26,43,95正确答案:B窗体底端窗体顶端27. 作进栈操作时,应先判断栈是否为_____。

正确答案点评A 空B 满C 上溢D 下溢正确答案:B窗体底端窗体顶端28. 假如要求能快速地实现在链表的末尾插入和删除结点的运算,如此选择_____最适宜。

正确答案点评A 单链表B 带尾指针的单循环链表C 双链表D 双循环链表正确答案:B窗体底端窗体顶端29. 判断一个循环队列是空队列的条件是_____。

正确答案点评A Q.rear==Q.frontB Q.front==0C Q.rear==0D (Q.rear+1)%maxsize==Q.front正确答案:A窗体底端窗体顶端30. 任何一棵二叉树的叶结点在先序、中序和后序遍历的序列中的相对次序____。

正确答案点评A 不发生变化B 发生变化C 不能确定D 以上都不对正确答案:A窗体底端窗体顶端31. 下面关于图的存储的表示中,哪一个是正确的?正确答案点评A 用相邻矩阵法存储图,占用的存储空间数只与图中结点个数有关,而与边数无关B 用相邻矩阵法存储图,占用的存储空间数只与图中边数有关,而与结点个数无关C 用邻接表法存储图,占用的存储空间数只与图中结点个数有关,而与边数无关D 用邻接表法存储图,占用的存储空间数只与图中边数有关,而与结点个数无关正确答案:A窗体底端窗体顶端32. 链表不具有的特点是_____。

正确答案点评A 可随机访问任一元素B 插入和删除不需要移动元素C 不必事先估计存储空间D 所需空间和线性表长度成正比正确答案:A窗体底端窗体顶端33. 假如用二分查找法取得的中间位置元素键值大于被查找值,说明被查找值位于中间值的前面,下次的查找区间为从原开始位置至____。

正确答案点评A 该中间位置B 该中间位置-1C 该中间位置+1D 该中间位置/2正确答案:B窗体底端窗体顶端34. 线性表按链式方式存储时,每个结点的存储包括_____两局部。

正确答案点评A 数据值与符号B 数据与指针C 数据与表名D 数据项与符号正确答案:B窗体底端窗体顶端35. 如下排序算法的时间复杂度最小的是____。

正确答案点评A 冒泡排序B 希尔排序C 简单项选择择排序D 归并排序正确答案:D窗体底端窗体顶端36. 线性表采用链式存储时,其地址_____。

正确答案点评A 必须是连续的B 必须是不连续的C 连续与否均可D 局部地址必须是连续的正确答案:C窗体底端窗体顶端37. 具有5个顶点的有向完全图有____条弧。

正确答案点评A 10B 16C 20D 25正确答案:C窗体底端窗体顶端38. 设某二维数组A[1..n,1..n],如此在该数组中用顺序查找法查找一个元素的时间复杂性的量级为______。

正确答案点评A O〔log2n〕B O(n)C O(nlog2n)D O(n^2)正确答案:D窗体底端窗体顶端39. 关于无向连通图的最小生成树的个数_____。

正确答案点评A 一定有多棵B 一定只有一棵C 有一棵或多棵D 可能不存在正确答案:B窗体底端窗体顶端40. 设深度为h的二叉树上只有度为0和度为2的结点,如此此类二叉树中所包含的结点数至少为____(注意C和D中h为指数)。

正确答案点评A 2h-1B 2(h-1)C 2*h-1D 2*h正确答案:A窗体底端窗体顶端41. 假如构造一棵具有n个结点的二叉排序树,最坏的情况下其深度不会超过____。

正确答案点评A n/2B nC (n+1)/2D n+1正确答案:B窗体底端窗体顶端42. 假如由森林转化得到的二叉树是非空的二叉树,如此二叉树形状是____。

正确答案点评A 根结点无右子树的二叉树B 根结点无左子树的二叉树C 根节点可能有左子树和右子树的二叉树D 各结点只有一个儿子的二叉树正确答案:C窗体底端窗体顶端43. 在长度为n 的双链表中某结点〔其地址〕之前,插入一个新结点的时间复杂度是_____ 。

相关文档
最新文档