《算法分析与设计》奥鹏东师网考题库正确答案

合集下载

《算法设计与分析》考试题目及答案(DOC)

《算法设计与分析》考试题目及答案(DOC)

《算法设计与分析》考试题目及答案(DOC)D. 预排序与递归调用7. 回溯法在问题的解空间树中,按(D)策略,从根结点出发搜索解空间树。

A.广度优先B. 活结点优先 C.扩展结点优先 D. 深度优先8. 分支限界法在问题的解空间树中,按(A)策略,从根结点出发搜索解空间树。

A.广度优先B. 活结点优先 C.扩展结点优先 D. 深度优先9. 程序块(A)是回溯法中遍历排列树的算法框架程序。

A.B.C.D. void backtrack (int t){if (t>n) output(x);elsefor (int i=t;i<=n;i++) {swap(x[t], x[i]);if (legal(t)) backtrack(t+1); swap(x[t], x[i]);}}void backtrack (int t){if (t>n) output(x);elsefor (int i=0;i<=1;i++) {x[t]=i;if (legal(t)) backtrack(t+1); }}10. 回溯法的效率不依赖于以下哪一个因素?(C )A.产生x[k]的时间;B.满足显约束的x[k]值的个数;C.问题的解空间的形式;D.计算上界函数bound的时间;E.满足约束函数和上界函数约束的所有x[k]的个数。

F.计算约束函数constraint的时间;11. 常见的两种分支限界法为(D)A. 广度优先分支限界法与深度优先分支限界法;B. 队列式(FIFO)分支限界法与堆栈式分支限界法;C. 排列树法与子集树法;D. 队列式(FIFO)分支限界法与优先队列式分支限界法;12. k带图灵机的空间复杂性S(n)是指(B)A.k带图灵机处理所有长度为n的输入时,在某条带上所使用过的最大方格数。

B.k带图灵机处理所有长度为n的输入时,在k条带上所使用过的方格数的总和。

C.k带图灵机处理所有长度为n的输入时,在k条带上所使用过的平均方格数。

东北师范大学22春“计算机科学与技术”《算法分析与设计》作业考核题库高频考点版(参考答案)试题号2

东北师范大学22春“计算机科学与技术”《算法分析与设计》作业考核题库高频考点版(参考答案)试题号2

东北师范大学22春“计算机科学与技术”《算法分析与设计》作业考核题库高频考点版(参考答案)一.综合考核(共50题)1.函数atoi(“1234”)的函数返回值是1234。

()A.错误B.正确参考答案:B2.已知一列数{8,9,7,4,1,2},使用简单选择排序法对其按照升序进行排列,第0趟比较之后数列为()A.8,9,7,4,1,2B.1,9,7,4,8,2C.8,7,4,1,2,9D.1,2,8,9,7,4参考答案:B3.在C语言中字符串的头文件是string.h。

()A.错误B.正确参考答案:B4.如何一步步的跟踪代码,找到问题,搞明白为何程序不能正常运行,这个过程称为()。

A.编写程序B.调试程序C.执行程序D.编译程序参考答案:B5.下列说法错误的是()A.使用高级计算机语言,如C、C++、Java,编写的程序,都需要经过编译器编译或解释,才能转化成机器能够识别并能执行的二进制代码B.如何一步步的跟踪代码,找到问题,搞明白为何程序不能正常运行,这个过程称为调试程序C.自动化的工具同样也能够帮助你跟踪程序,尤其当程序很复杂时效果更加明显,这种工具叫做调试器D.调试器不能解决程序中出现的问题参考答案:D6.快速排序的速度在所有排序方法中为最快,而且所需附加空间也最少。

()A.错误B.正确参考答案:A7.穷举法,也称辗转法,是一种针对于密码的破译方法,即将密码进行逐个推算直到找出真正的密码为止。

()A.错误B.正确参考答案:A8.例如“DisplayInfo()”和“UserName”这样的命名规则是()。

A.匈牙利命名法B.骆驼命名法C.下划线命名法D.帕斯卡命名法参考答案:D9.图中有关路径的定义是()。

C.由不同边所形成的序列D.上述定义都不是参考答案:A10.字符数组可用字符串来初始化。

()A.错误B.正确参考答案:B11.一个n个顶点的连通无向图,其边的个数至少为()。

A.n-1B.nC.n+1D.nlogn参考答案:A12.在程序调试中,我们需要借助于()来中断程序的运行,查看变量的值。

5.《算法设计与分析》试题库

5.《算法设计与分析》试题库

《算法分析与设计》试题库(一)一、选择题1.应用Johnson 法则的流水作业调度采用的算法是(D )A. 贪心算法B. 分支限界法C.分治法D. 动态规划算法2.Hanoi 塔问题如下图所示。

现要求将塔座A 上的的所有圆盘移到塔座B 上,并仍按同样顺序叠置。

移动圆盘时遵守Hanoi 塔问题的移动规则。

由此设计出解Hanoi 塔问题的递归算法正确的为:(B )Hanoi 塔A. void hanoi(int n, int A, int C, int B) {if (n > 0) {hanoi(n-1,A,C, B); move(n,a,b);hanoi(n-1, C, B, A); } B. void hanoi(int n, int A, int B, int C) {if (n > 0) {hanoi(n-1, A, C, B); move(n,a,b);hanoi(n-1, C, B, A); }C. void hanoi(int n, int C, int B, int A){if (n > 0){hanoi(n-1, A, C, B);move(n,a,b);hanoi(n-1, C, B, A);}D. void hanoi(int n, int C, int A, int B){if (n > 0){hanoi(n-1, A, C, B);move(n,a,b);hanoi(n-1, C, B, A);}3.动态规划算法的基本要素为(C)A. 最优子结构性质与贪心选择性质B.重叠子问题性质与贪心选择性质C.最优子结构性质与重叠子问题性质D. 预排序与递归调用4. 算法分析中,记号O表示(B),记号Ω表示(A),记号Θ表示(D)。

A.渐进下界B.渐进上界C.非紧上界D.紧渐进界E.非紧下界5. 以下关于渐进记号的性质是正确的有:(A)A.f(n)(g(n)),g(n)(h(n))f(n)(h(n))=Θ=Θ⇒=ΘB. f(n)O(g(n)),g(n)O(h(n))h(n)O(f(n))==⇒=C. O(f(n))+O(g(n)) = O(min{f(n),g(n)})D. f(n)O(g(n))g(n)O(f(n))=⇔=6. 能采用贪心算法求最优解的问题,一般具有的重要性质为:(A)A. 最优子结构性质与贪心选择性质B.重叠子问题性质与贪心选择性质C.最优子结构性质与重叠子问题性质D. 预排序与递归调用7. 回溯法在问题的解空间树中,按(D)策略,从根结点出发搜索解空间树。

[东北师范大学]《算法分析与设计》20春在线作业1

[东北师范大学]《算法分析与设计》20春在线作业1

【奥鹏】-[东北师范大学]算法分析与设计20春在线作业1试卷总分:100 得分:100第1题,按F5开始调试,程序便会直接运行到断点处。

接下来可以逐行来运行程序,查看各个变量的值,也可以直接运行到下一个断点或程序结束,这样过程被称作()。

A、设置断点B、单步调试C、程序编译D、程序调试正确答案:B第2题,()主要是用来显示当前目录的名称或更改当前的目录。

A、dirB、cdC、typeD、fc正确答案:B第3题,输出一个字符串时使用()格式符。

A、%cB、%sC、%dD、%e正确答案:B第4题,动态规划是一种在数学和计算机科学中使用的,用于求解包含()的最优化问题的方法。

A、重叠子问题B、相似子问题C、互斥子问题D、有序子问题正确答案:A第5题,如何一步步的跟踪代码,找到问题,搞明白为何程序不能正常运行,这个过程称为()。

A、编写程序B、调试程序C、执行程序D、编译程序正确答案:B第6题,对于循环队列,下列叙述中正确的是()A、队头指针是固定不变的B、队头指针一定大于队尾指针C、队头指针一定小于队尾指针D、队头指针可以大于队尾指针,也可以小于队尾指针正确答案:D第7题,下列对队列的叙述正确的是()。

A、队列属于非线性表B、队列按“先进后出”原则组织数据C、队列在队尾删除数据D、队列按“先进先出”原则组织数据正确答案:D第8题,以C语言为例,下列四个选项中,均是不合法的用户标识符的是()。

A、BA、x_0、doB、float、1a0、_YC、x-y、goto、123D、_123、tmp、CHAR正确答案:C第9题,()命令用来显示ASCII码文件的内容。

A、dirB、cdC、typeD、fc正确答案:C第10题,下列排序算法中,其中()是稳定的。

A、堆排序,冒泡排序B、快速排序,堆排序C、直接选择排序,归并排序D、归并排序,冒泡排序正确答案:D第11题,strlen(str)是用来()。

A、求字符串长度B、比较字符C、求子串D、字符串拷贝正确答案:A第12题,批处理,也称为批处理脚本,其文件扩展名为()。

《算法分析与设计》复习题答案

《算法分析与设计》复习题答案

《算法分析与设计》练习题一简答题1. 程序书写格式应该遵循哪四个原则?2. 什么是算法?3.什么是线性结构?什么是非线性结构?4.已知二叉树后序遍历序列是DABEC,中序遍历序列是DEBAC,则前序遍历序列是什么?5.什么是数制?6.如果将十进制数106转换为八进制数,结果是多少?7.请问查找算法的效率用什么进行度量?8. 写出快速排序法的基本思想。

9. 递归算法解决问题的特点是什么?10.简述空串与空格串的区别。

11.程序调试的作用是什么?经过调试后的程序是否需要再测试?12.算法通常有哪些特征?13. 什么是数据结构?14. 一个栈的初始状态为空,首先将元素5,4,3,2,1依次入栈,然后退栈一次,再将元素A、B、C、D依次入栈,之后将所有元素全部退栈,则所元素退栈(包括中间退栈的元素)的顺序为什么?15.列出几种常见的进制(至少三种)16.如果将十进制数238转换为二进制数,结果是多少?17. 什么是查找?18. 写出插入排序基本思想及排序步骤。

19. 递推算法与递归算法的区别是什么?20.简述主串与子串的关系。

21.如果将二进制数101001101011转换为十六进制数,结果是多少?22. 对于长度为n的有序表,折半查找的平均查找长度是多少?23. 写出归并排序法的基本思想。

24. 请写出递归的基本概念,以及设计递归算法的两个关键问题。

25.写出如下字符处理函数的功能:(1)int isdigit(int c)(2)int isalpha(int c)(3)int isalnum(int c)(4)int islower(int c)(5)int isupper(int c)《算法分析与设计》练习题二简答题1.程序的注释从功能上分为哪几种?2.什么是算法的时间复杂度?。

算法分析与设计考试复习题及参考答案

算法分析与设计考试复习题及参考答案
一、简要回答下列问题 : 1. 算法重要特性是什么? 2. 算法分析的目的是什么? 3. 算法的时间复杂性与问题的什么因素相关? 4. 算法的渐进时间复杂性的含义? 5. 最坏情况下的时间复杂性和平均时间复杂性有什么不同? 6. 简述二分检索(折半查找)算法的基本过程。 7. 背包问题的目标函数和贪心算法最优化量度相同吗? 8. 采用回溯法求解的问题,其解如何表示?有什么规定? 9. 回溯法的搜索特点是什么? 10. n皇后问题回溯算法的判别函数place的基本流程是什么? 11. 为什么用分治法设计的算法一般有递归调用? 12. 为什么要分析最坏情况下的算法时间复杂性? 13. 简述渐进时间复杂性上界的定义。 14. 二分检索算法最多的比较次数? 15. 快速排序算法最坏情况下需要多少次比较运算? 16. 贪心算法的基本思想? 17. 回溯法的解(x1,x2,……xn)的隐约束一般指什么? 18. 阐述归并排序的分治思路。 19. 快速排序的基本思想是什么。 20. 什么是直接递归和间接递归?消除递归一般要用到什么数据结 构? 21. 什么是哈密顿环问题? 22. 用回溯法求解哈密顿环,如何定义判定函数? 23. 请写出prim算法的基本思想。 二、复杂性分析 1、 MERGESORT(low,high) if low<high; then mid←(low,high)/2; MERGESORT(low,mid); MERGESORT(mid+1,high); MERGE(low,mid,high); endif end MERGESORT 2、 procedure S1(P,W,M,X,n) i←1; a←0
15..最坏情况下快速排序退化成冒泡排序,需要比较n2次。 16. 是一种依据最优化量度依次选择输入的分级处理方法。基本思 路是:首先根据题意,选取一种量度标准;然后按这种量度标准对这n 个输入排序,依次选择输入量加入部分解中。如果当前这个输入量的加 入,不满足约束条件,则不把此输入加到这部分解中。 17.回溯法的解(x1,x2,……xn)的隐约束一般指个元素之间应满 足的某种关系。 18. 将数组一分为二,分别对每个集合单独排序,然后将已排序的 两个序列归并成一个含n个元素的分好类的序列。如果分割后子问题还 很大,则继续分治,直到一个元素。 19.快速排序的基本思想是在待排序的N个记录中任意取一个记录, 把该记录放在最终位置后,数据序列被此记录分成两部分。所有关键字 比该记录关键字小的放在前一部分,所有比它大的放置在后一部分,并 把该记录排在这两部分的中间,这个过程称作一次快速排序。之后重复 上述过程,直到每一部分内只有一个记录为止。 20.在定义一个过程或者函数的时候又出现了调用本过程或者函数 的成分,既调用它自己本身,这称为直接递归。如果过程或者函数P调 用过程或者函数Q,Q又调用P,这个称为间接递归。消除递归一般要用 到栈这种数据结构。 21.哈密顿环是指一条沿着图G的N条边环行的路径,它的访问每个 节点一次并且返回它的开始位置。 22.当前选择的节点X[k]是从未到过的节点,即X[k]≠X[i](i=1,2, …,k-1),且C(X[k-1], X[k])≠∞,如果k=-1,则C(X[k], X[1]) ≠∞。 23. 思路是:最初生成树T为空,依次向内加入与树有最小邻接边 的n-1条边。处理过程:首先加入最小代价的一条边到T,根据各节点到 T的邻接边排序,选择最小边加入,新边加入后,修改由于新边所改变 的邻接边排序,再选择下一条边加入,直至加入n-1条边。 二、复杂性分析 1、 递归方程

东北师范大学2020年5月课程考试(网考)《算法分析与设计》参考答案题库汇总奥鹏

东北师范大学2020年5月课程考试(网考)《算法分析与设计》参考答案题库汇总奥鹏

东北师范大学2020年5月课程考试(网考)《算法分析与设计》参考答案题库汇总奥鹏最新东北师范大学《算法分析与设计》网考参考试题汇总标准答案1.陈述算法在最坏情况下的时间复杂度和平均时间复杂度;这两种评估算法复杂性的方法各自有什么实际意义?答最坏情况下的时间复杂度称最坏时间复杂度。

一般不特别说明,讨论的时间复杂度均是最坏情况下的时间复杂度。

这样做的原因是:最坏情况下的时间复杂度是算法在任何输入实例上运行时间的上界,这就保证了算法的运行时间不会比任何更长。

平均时间复杂度是指所有可能的输入实例均以等概率出现的情况下,算法的期望运行时间。

1. 简单选择排序算法在最好情况下的时间复杂度为O(N)。

A. 错误B. 正确【答案】A2. 若需在O(nlog2n)的时间内完成对数组的排序,且要求排序是稳定的,则可选择的排序方法是()。

A. 快速排序B. 堆排序C. 归并排序D. 直接插入排序【答案】C3. 求n的阶乘的表示方法n!=n*(n-1)! ,其中0!=1,对应的是递归的思想。

A. 错误B. 正确【答案】B4. 一个算法的评价只要考虑时间复杂度。

A. 错误B. 正确【答案】A5. 十进制的123,1的位权是()。

A. 1B. 2C. 10D. 100【答案】D6. 栈和队列都是线性结构。

A. 错误B. 正确【答案】B7. 高精度计算时可以用数组来存储运算结果。

A. 错误B. 正确【答案】B8. 下列叙述中正确的是()A. 数据的逻辑结构与存储结构必定是一一对应的B. 由于计算机在存储空间上是向量式的存储结构,因此,利用数组只能处理线性结构C. 程序设计语言中的数组一般是顺序存储结构,因此,利用数组只能处理线性结构D. 以上说法都不对【答案】D9. 按F5开始调试,程序便会直接运行到断点处。

接下来可以逐行来运行程序,查看各个变量的值,也可以直接运行到下一个断点或程序结束,这样过程被称作()。

A. 设置断点B. 单步调试C. 程序编译D. 程序调试【答案】B。

[东北师范大学]《算法分析与设计》20春在线作业2

[东北师范大学]《算法分析与设计》20春在线作业2

【奥鹏】-[东北师范大学]算法分析与设计20春在线作业2试卷总分:100 得分:100第1题,图中有关路径的定义是()。

A、由顶点和相邻顶点序偶构成的边所形成的序列B、由不同顶点所形成的序列C、由不同边所形成的序列D、上述定义都不是正确答案:A第2题,()是一个基本完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具,如UML工具、代码管控工具、集成开发环境等等。

A、VSB、VMC、Dev-C++D、IDE正确答案:A第3题,下列数据结构中,属于非线性结构的是()。

A、循环队列B、带链队列C、二叉树D、带链栈正确答案:C第4题,下列叙述中正确的是()。

A、顺序存储结构的存储一定是连续的,链式存储结构的存储空间不一定是连续的B、顺序存储结构只针对线性结构,链式存储结构只针对非线性结构C、顺序存储结构能存储有序表,链式存储结构不能存储有序表D、链式存储结构比顺序存储结构节省存储空间正确答案:A第5题,十六进制中最大的数码是()。

A、16B、15C、FD、E正确答案:C第6题,二进制,就表示某一位置上的数运算时是逢()进一位。

A、2B、8C、9D、10正确答案:A第7题,在程序代码编辑框外(一般都是程序代码的最左侧)双击,就成功设置了一个断点,设置成功后会在该行的最前面显示一个圆点,这样的过程称作()。

A、设置断点B、单步调试C、程序编译D、程序调试正确答案:A第8题,递归结束条件,又称为()。

A、递归判定B、递归策略C、递归出口D、递归返回正确答案:C第9题,下列叙述中正确的是()。

A、一个逻辑数据结构只能有一种存储结构B、数据的逻辑结构属于线性结构,存储结构属于非线性结构C、一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率D、一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率正确答案:D第10题,下列说法正确的是()。

A、关键字是数据元素(或记录)中某个数据项的值,可以标识一个记录,称为主关键字。

东师《算法分析与设计》20春在线作业1答案30728

东师《算法分析与设计》20春在线作业1答案30728

(单选题)1: 下面给出的四种排序方法中,排序过程中的比较次数与排序方法无关的是()。

A: 选择排序法
B: 插入排序法
C: 快速排序法
D: 堆积排序法
正确答案: A
(单选题)2: 已知某二叉树的后序遍历序列是dabec,中序遍历序列是deabc,它的前序遍历序列是()
A: acbed
B: deabc
C: decab
D: cedba
正确答案: D
(单选题)3: 以下选项中合法的字符常量是()。

A: "B"
B: 68
C: D
D: '\010'
正确答案: D
(单选题)4: 在有序表A[1..12]中,采用二分查找算法查等于A[12]的元素,所比较的元素下标依次为()。

A: 5, 8, 10, 12
B: 6, 9, 11, 12
C: 4, 7, 9, 12
D: 1, 4, 8, 12
正确答案: B
(单选题)5: 下列数据结果中,能够按照“先进后出”原则存取数据的是()
A: 循环队列
B: 栈
C: 队列
D: 二叉树
正确答案: B
(单选题)6: strcat()函数是用来()。

A: 字符串连接
B: 比较字符
C: 求子串
D: 字符串拷贝
正确答案: A。

《算法设计与分析》复习题参考答案

《算法设计与分析》复习题参考答案

《算法设计与分析》复习题参考答案一、概念题:请解释下列术语。

1.数据元素的集合。

2.队列是一个线性表,限制为只能在固定的一端进行插入,在固定的另一端进行删除。

3.对于算法a,如果存在一多项式p(),使得对a的每个大小为n的输入,a的计算时间为o(p(n)),则称a具有多项式复杂度4.二叉树的层数i与该层上的结点数n的关系为:n(i)=i2。

5.如果可满足性约化为一个问题L,则称该问题为NP-难度的。

6.算法就是一组有穷的规则,它规定了解决某一特定类型问题的一系列运算。

7.多数据单指令流8.若图的任意两个节点间均存在路径可达,则称该图为连通图。

9. 是指一个数学模型以及定义在该模型上的一组操作。

10.算法的复杂度只能用指数函数对其限界。

11.函数或过程直接或间接调用它自己。

12.和高度相同的满二叉树的每个对应的顶点编号相同的树13.由所有可行状态所构成的树。

14.如果L时NP难度的且L∈NP,则称问题L是NP-完全的。

15.算法是一个步骤的序列,满足:有穷性、可行性、确定性、输入、输出;过程不需要满足由穷性。

16.有向图的每条边有起点与终点之分,且用箭头指向边的终点。

无向图的边无起点和终点之分,边无箭头。

17.树(tree)是一个或多个结点的有限集合,,它使得:①有一个特别指定的称作根(root)的结点;②剩下的结点被分成m≥0个不相交的集合tl,…,tm,这些集合的每一个都是一棵树,并称t1,…,tm为这根的子树(subtree)。

18.P是所有可在多项式时间内用确定算法求解的判定问题的集合。

19.运算结果是唯一确定的算法20. nP是所有可在多项式时间内用不确定算法求解的判定问题的集合二、填空题1.n2.O ( n )3.最优化问题4.宽度优先搜索5.结点的最大级数6.互异7.内结点和外结点8.方形9.内部路径长度、外部路径长度10.一次11.归并分类算法12.贪心选择性质13.最优子结构14.二元归并15.最小成本生成树16.最优性17.最优决策18.可容许最大成本c19.最小成本三、程序填空题。

东师算法分析与设计20秋在线作业2答案_57939

东师算法分析与设计20秋在线作业2答案_57939

(单选题)1: 用计算机解决问题的过程可以分成哪三个阶段()。

A: 输入、测试和输出
B: 分析问题、设计算法和实现算法
C: 输入、算法设计和输出
D: 分析问题、测试和实现
正确答案: B
(单选题)2: ()命令主要用来查看磁盘中文件的命令。

A: dir
B: cd
C: type
D: fc
正确答案: A
(单选题)3: cd 目录名的功能是()。

A: 退回到根目录
B: 退回到上一级目录
C: 进入特定的目录
D: 显示出文本文件的内容
正确答案: C
(单选题)4: IDE的全程是()。

A: 集成开发环境
B: 集成环境
C: 开发软件
D: 调试过程
正确答案: A
(单选题)5: 在排序算法中,每次从未排序的记录中挑出最小(或最大)关键码字的记录,加入到已排序记录的末尾,该排序方法是()。

A: 选择
B: 冒泡
C: 插入
D: 堆
正确答案: C
(单选题)6: 在下列排序算法中,哪一个算法的时间复杂度与初始排序无关()。

A: 直接插入排序
B: 冒泡排序
C: 快速排序
D: 直接选择排序
正确答案: D
(单选题)7: 下列叙述中,正确的是()。

算法分析与设计(习题答案)

算法分析与设计(习题答案)

算法分析与设计教程习题解答第1章 算法引论1. 解:算法是一组有穷的规则,它规定了解决某一特定类型问题的一系列计算方法。

频率计数是指计算机执行程序中的某一条语句的执行次数。

多项式时间算法是指可用多项式函数对某算法进行计算时间限界的算法。

指数时间算法是指某算法的计算时间只能使用指数函数限界的算法。

2. 解:算法分析的目的是使算法设计者知道为完成一项任务所设计的算法的优劣,进而促使人们想方设法地设计出一些效率更高效的算法,以便达到少花钱、多办事、办好事的经济效果。

3. 解:事前分析是指求出某个算法的一个时间限界函数(它是一些有关参数的函数);事后测试指收集计算机对于某个算法的执行时间和占用空间的统计资料。

4. 解:评价一个算法应从事前分析和事后测试这两个阶段进行,事前分析主要应从时间复杂度和空间复杂度这两个维度进行分析;事后测试主要应对所评价的算法作时空性能分布图。

5. 解:①n=11; ②n=12; ③n=982; ④n=39。

第2章 递归算法与分治算法1. 解:递归算法是将归纳法的思想应用于算法设计之中,递归算法充分地利用了计算机系统内部机能,自动实现调用过程中对于相关且必要的信息的保存与恢复;分治算法是把一个问题划分为一个或多个子问题,每个子问题与原问题具有完全相同的解决思路,进而可以按照递归的思路进行求解。

2. 解:通过分治算法的一般设计步骤进行说明。

3. 解:int fibonacci(int n) {if(n<=1) return 1;return fibonacci(n-1)+fibonacci(n-2); }4. 解:void hanoi(int n,int a,int b,int c) {if(n>0) {hanoi(n-1,a,c,b); move(a,b);hanoi(n-1,c,b,a); } } 5. 解:①22*2)(−−=n n f n② )log *()(n n n f O =6. 解:算法略。

东师《算法分析与设计》15春在线作业1

东师《算法分析与设计》15春在线作业1

东师《算法分析与设计》15春在线作业1一、单选题(共20 道试题,共40 分。

)V 1. strchr()函数用来()。

A. 字符串连接B. 比较字符C. 求字符位置D. 求子串位置满分:2 分2. 数制所使用数码的个数称为()。

A. 进制B. 基数C. 位权D. 数码满分:2 分3. strcmp("a","b")返回的值是()A. 2B. 1C. 0D. -1满分:2 分4. 批处理,也称为批处理脚本,其文件扩展名为()。

A. .batB. .exeC. .txtD. .c满分:2 分5. islower()函数用来()。

A. 判断字母B. 判断数字C. 判断大写D. 判断小写满分:2 分6. 排序算法是按照某个或某些关键字的(),递增或递减的排列起来的操作A. 类别B. 属性D. 大小满分:2 分7. toupper()函数用来()。

A. 小写字母转换为大写字母B. 大写字母转换为小写字母C. 小写字母转换为大写字母,同时大写字母转换为小写字母D. 判断大小写满分:2 分8. 设无向图的顶点个数为n,则该图最多有()条边。

A. n-1B. n(n-1)/2C. n(n+1)/2D. n2满分:2 分9. 字符数组在进行指定初值时,若未指定数组长度,则长度()初值个数。

A. 小于C. 大于D. 不等于满分:2 分10. 在长度为n的有序线性表中进行二分查找,最坏情况下需要比较的次数是()。

A. O(n)B. O(n2)C. O(log2n)D. O(nlog2n)满分:2 分11. 十进制数2024等值于十六制数为( )。

A. 7E8B. 6F7C. 7ABD. 3DF满分:2 分12. 下列排序算法中,在每一趟都能选出一个元素放到其最终位置上,并且其时间性能受数据初始特性影响的是:()。

A. 直接插入排序B. 快速排序C. 直接选择排序D. 堆排序满分:2 分13. 设有如下函数定义int fun(int k) { if (k<1) return 0; else if(k==1) return 1; else return fun(k-1)+1; } 若执行调用语句:n=fun(3);,则函数fun 总共被调用的次数是()。

东北师范大学奥鹏算法分析与设计20春在线作业2标准答案

东北师范大学奥鹏算法分析与设计20春在线作业2标准答案
C.编译器
D.调解器
正确答案:A
3.int atoi(char *s)函数的作用是()。
A.整数转换为字符串
B.字符串转换为整数
C.字符转换为字符串
D.获取字符个数
正确答案:B
4.下列排序算法中,其中()是稳定的。
A.堆排序,冒泡排序
B.快速排序,堆排序
C.直接选择排序,归并排序
D.归并排序,冒泡排序
B.递归策略
C.递归出口
D.递归返回
正确答案:C
16.“二分法”和“牛顿迭代法”属于()。
A.递推法
B.穷举法
C.近似迭代法
D.动态规划法
正确答案:C
17.一个算法的评价主要从时间复杂度和()来考虑。
A.空间复杂度
B.算法有效性
C.算法有穷性
D.算法可读性
正确答案:A
18.下面关于二分查找的叙述正确的是()
A.VS
B.VM
C.Dev-C++
D.IDE
正确答案:A
8.下面4句话中,最准确的表述是()。
A.程序=算法+数据结构
B.程序是使用编程语言实现算法
C.程序的开发方法决定算法设计
D.算法是程序设计中最关键的因素
正确答案:A
9.执行memset(s,'a',4)后,s的值为()。
A."aaaa"
B."a4"
按“先进后出”原则组织数据的数据结构是队列。
A.错误
B.正确
正确答案:A
6.一个算法有零个或多个输入。
A.错误
B.正确
正确答案:B
7.算法的空间复杂度是指算法需要消耗的空间资源。

东北师范大学奥鹏算法分析与设计20春在线作业1标准答案

东北师范大学奥鹏算法分析与设计20春在线作业1标准答案
B.递推
C.回归
D.回溯
正确答案:BC
三、判断题(共22道试题,共44分)
1.已知一棵度为3的树有2个度为1的结点,3个度过为2的结点,4个度为3的结点,则该树中有12个叶子结点。
A.错误
B.正确
正确答案:B
2.假如A="Jinlin changchun",B="changchun",则B是A的子串。
C.字符转换为字符串
D.获取字符个数
正确答案:B
15.排序算法是按照某个或某些关键字的(),递增或递减的排列起来的操作
A.类别
B.属性
C.名称
D.大小
正确答案:D
16.strlen(str)是用来()。
A.求字符串长度
B.比较字符
C.求子串
D.字符串拷贝
正确答案:A
17.在一个无向图中,所有顶点的度数之和等于所有边数(B)倍,在一个有向图中,所有顶点的入度之和等于所有顶点出度之和的()倍。
D.以上都不对
正确答案:D
10.八进制,就表示某一位置上的数运算时是逢()进一位。
A.2
B.8
C.9
D.10
正确答案:B
11.()是一个基本完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具,如UML工具、代码管控工具、集成开发环境等等。
A.VS
B.VM
C.Dev-C++
D.IDE
正确答案:A
A.错误
B.正确
正确答案:B
11.算法的空间复杂度是指算法需要消耗的空间资源。
A.错误
B.正确
正确答案:B
12.高精度计算时可以用字符串来存储运算结果。

东师算法分析与设计17春在线作业2【标准答案】

东师算法分析与设计17春在线作业2【标准答案】

算法分析与设计17春在线作业2
试卷总分:100 得分:100
一、单选题 (共 20 道试题,共 40 分)
1. 对于循环队列,下列叙述中正确的是()
A. 队头指针是固定不变的
B. 队头指针一定大于队尾指针
C. 队头指针一定小于队尾指针
D. 队头指针可以大于队尾指针,也可以小于队尾指针
满分:2 分
正确答案:D
2. 用计算机解决问题的过程可以分成哪三个阶段()。

A. 输入、算法设计和输出
B. 输入、测试和输出
C. 分析问题、设计算法和实现算法
D. 分析问题、测试和实现
满分:2 分
正确答案:C
3. 九进制,就表示某一位置上的数运算时是逢()进一位。

A. 2
B. 8
C. 9
D. 10
满分:2 分
正确答案:C
4. 十进制数2024等值于十六制数为( )。

A. 7E8
B. 6F7
C. 7AB
D. 3DF
满分:2 分
正确答案:A
5. 在排序算法中,每次从未排序的记录中挑出最小(或最大)关键码字的记录,加入到已排序记录的末尾,该排序方法是()。

A. 选择
B. 冒泡
C. 插入。

奥鹏东北师范大学2020年5月课程考试《算法分析与设计》考前练兵.doc

奥鹏东北师范大学2020年5月课程考试《算法分析与设计》考前练兵.doc

单选题1.若需在O(nlog2n)的时间内完成对数组的排序,且要求排序是稳定的,则可选择的排序方法是()。

A.快速排序B.堆排序C.归并排序D.直接插入排序答案: C2.十进制的123,1的位权是()。

A.1B.2C.10D.100答案: D3.下列叙述中正确的是()A.数据的逻辑结构与存储结构必定是一一对应的B.由于计算机在存储空间上是向量式的存储结构,因此,利用数组只能处理线性结构C.程序设计语言中的数组一般是顺序存储结构,因此,利用数组只能处理线性结构D.以上说法都不对答案: D4.按F5开始调试,程序便会直接运行到断点处。

接下来可以逐行来运行程序,查看各个变量的值,也可以直接运行到下一个断点或程序结束,这样过程被称作()。

A.设置断点B.单步调试C.程序编译D.程序调试答案: B5.注释从功能上可以分为文件注释、函数注释和()。

A.程序员注释B.功能注释C.时间注释D.版权注释答案: B6.()是用户在程序中使用的名字,它是一种用于命名一些具有特定含义的对象的符号,通常用来标识程序中的变量,常量,函数,语句块。

A.对象B.符号C.标识符D.命名规则答案: C7.一个算法的评价主要从时间复杂度和()来考虑。

A.空间复杂度B.算法有效性C.算法有穷性D.算法可读性答案: A8.()是一个开放源代码的、基于Java的可扩展开发平台。

A.VSB.Dev-C++C.EclipseD.JDK答案: C9.十六进制的213,1的位权是()。

A.0B.1C.8D.16答案: D10.一般情况下,算法中基本操作重复执行的次数是()的某个函数。

A.问题类型B.问题难度C.问题结构D.问题规模答案: D11.下列叙述中正确的是()A.循环队列有队头和队尾两个指针,因此,循环队列是非线性结构B.在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况C.在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况D.循环队列中元素的个数是由队头指针和队尾指针共同决定答案: D12.二进制,就表示某一位置上的数运算时是逢()进一位。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
A.错误
B.正确
【答案】A
139. strcmp()函数用来()。
A.求字符串长度
B.比较字符
C.求子串
D.字符串拷贝
【答案】B
140.对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为log2n。
A.错误
B.正确
【答案】A
141.采用简单选择排序,比较次数与移动次数分别为()。
A. O(n),O(logn)
A.对象
B.符号
C.标识符
D.命名规则
【答案】C
12.一个算法的评价主要从时间复杂度和()来考虑。
A.空间复杂度
B.算法有效性
C.算法有穷性
D.算法可读性
【答案】A
13. ()是一个开放源代码的、基于Java的可扩展开发平台。
A. VS
B. Dev-C++
C. Eclipse
D. JDK
【答案】C
14.十六进制的213,1的位权是()。
A. 8,9,7,4,1,2
B. 1,9,7,4,8,2
C. 8,7,4,1,2,9
D. 1,2,8,9,7,4
【答案】B
131.字符数组通过()来引用其中的某个元素。
A.数组名
B.下标
C.数组名和下标
D.字符串名
【答案】C
132.统计字符串长度时包括字符串结束标志。
A.错误
B.正确
【答案】A
133.字符数组要求其最后一个元素是‘\0’。
A.错误
B.正确
【答案】B
136.下面给出的四种排序方法中,排序过程中的比较次数与排序方法无关的是()。
A.选择排序法
B.插入排序法
C.快速排序法
D.堆积排序法
【答案】A
137.简单选择排序的时间复杂度为n*n。
A.错误
B.正确
【答案】B
138.两个字符串中Байду номын сангаас字符个数相同时才能进行字符串大小的比较。
A. 2
B. 8
C. 9
D. 10
【答案】A
19.一棵二叉树第6层(根结点为第一层)的结点数最多为31个。
A.错误
B.正确
【答案】A
2020年东北师范大学网考试题题库
算法分析与设计
正确答案
试读两页内容如下:
121.快速排序总比简单排序快。
A.错误
B.正确
【答案】A
122. strncmp()函数和stricmp()函数相同。
A.错误
B.正确
【答案】A
123. isalnum()函数用来()。
A.判断字符串
B.判断大写
C.判断数字或字母
A. log2n
B. n/2
C. n
D. n+1
【答案】C
128.递归算法是()。
A.简单方程
B.标准方程
C.简单公式
D.标准公式
【答案】D
129.递归算法是一种用若干步可重复的简单运算(规律)来描述复杂问题的方法。
A.错误
B.正确
【答案】A
130.已知一列数{8,9,7,4,1,2},使用简单选择排序法对其按照升序进行排列,第0趟比较之后数列为()
D.判断小写
【答案】C
124.顺序查找法适合于存储结构为散列存储的线性表
A.错误
B.正确
【答案】A
125.归并排序是一种稳定的排序方法。
A.错误
B.正确
【答案】B
126. puts()函数一次可以输出多个字符串。
A.错误
B.正确
【答案】A
127.对于长度为n的线性表进行顺序查找,在最坏情况下所需要的比较次数为()。
A.循环队列有队头和队尾两个指针,因此,循环队列是非线性结构
B.在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况
C.在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况
D.循环队列中元素的个数是由队头指针和队尾指针共同决定
【答案】D
18.二进制,就表示某一位置上的数运算时是逢()进一位。
A. 0
B. 1
C. 8
D. 16
【答案】D
15.任意一棵具有n个结点的二叉树,若它有m个叶子,则该二叉树上度数为1的结点为n-2m+1个。
A.错误
B.正确
【答案】B
16.一般情况下,算法中基本操作重复执行的次数是()的某个函数。
A.问题类型
B.问题难度
C.问题结构
D.问题规模
【答案】D
17.下列叙述中正确的是()
B. O(logn),0(n*n)
C. 0(n*n),0(n)
D. 0(nlogn),0(n)
【答案】C
142.冒泡排序法每次比较的是相邻的两个数:a[i]和a[i+1],如果前一个数比后一个数大,则马上交换。
A.错误
B.正确
【答案】B
1.简单选择排序算法在最好情况下的时间复杂度为O(N)。
A.错误
A.错误
B.正确
【答案】A
134. strchr()函数用来()。
A.字符串连接
B.比较字符
C.求字符位置
D.求子串位置
【答案】C
135.能采用递归描述的算法通常有这样的特征:为求解规模为N的问题,设法将它分解成规模较小的问题,然后从这些小问题的解很容易构造出大问题的解,并且这些规模较小的问题也能采用同样的分解和综合方法,分解成规模更小的问题,并从这些更小问题的解构造出规模较大问题的解。特别地,当规模N=1时,能直接得解。
B.由于计算机在存储空间上是向量式的存储结构,因此,利用数组只能处理线性结构
C.程序设计语言中的数组一般是顺序存储结构,因此,利用数组只能处理线性结构
D.以上说法都不对
【答案】D
9.按F5开始调试,程序便会直接运行到断点处。接下来可以逐行来运行程序,查看各个变量的值,也可以直接运行到下一个断点或程序结束,这样过程被称作()。
A.错误
B.正确
【答案】A
5.十进制的123,1的位权是()。
A. 1
B. 2
C. 10
D. 100
【答案】D
6.栈和队列都是线性结构。
A.错误
B.正确
【答案】B
7.高精度计算时可以用数组来存储运算结果。
A.错误
B.正确
【答案】B
8.下列叙述中正确的是()
A.数据的逻辑结构与存储结构必定是一一对应的
B.正确
【答案】A
2.若需在O(nlog2n)的时间内完成对数组的排序,且要求排序是稳定的,则可选择的排序方法是()。
A.快速排序
B.堆排序
C.归并排序
D.直接插入排序
【答案】C
3.求n的阶乘的表示方法n!=n*(n-1)!,其中0!=1,对应的是递归的思想。
A.错误
B.正确
【答案】B
4.一个算法的评价只要考虑时间复杂度。
A.设置断点
B.单步调试
C.程序编译
D.程序调试
【答案】B
10.注释从功能上可以分为文件注释、函数注释和()。
A.程序员注释
B.功能注释
C.时间注释
D.版权注释
【答案】B
11. ()是用户在程序中使用的名字,它是一种用于命名一些具有特定含义的对象的符号,通常用来标识程序中的变量,常量,函数,语句块。
相关文档
最新文档