详情请咨询QQ:3494317897 微信:aopy98
算法分析与设计2022年春学期在线作业2题目 试卷总分:100 得分:100 一、单选题 (共 20 道试题,共 40 分) 1.将f=1+1/2+1/3+…+1/n转化成递归函数,其递归体是()。 A.f(1)=0 B.f(1)=1 C.f(0)=1 D.f(n)=f(n-1)+1/n
2.在长度为64的有序线性表中进行顺序查找,最坏情况下需要比较的次数为()。 A.63 B.64 C.6 D.7
3.下面说法错误的是()。 A.递推和递归同属于迭代解法的两种不同实现方式 B.递推:知道第一个,推出下一个,直到达到目的;递归:要知道第一个,需要先知道下一个,直到一个已知的,再反回来,得到上一个,直到第一个 C.算法执行效率不同:递推效率和速度高于递归。 D.算法执行效率不同:递归效率和速度高于递推
4.算法流程图由一些图框和流程线组成,下面表示处理的图框是()。 A.圆形 B.菱形 C.圆角矩形 D.矩形
5.输出单个字符时使用()格式符。 A.%c B.%s C.%d D.%e
6.在下面的排序方法中,辅助空间为O(n)的是() 。 A.希尔排序 B.堆排序 C.选择排序 D.归并排序
7.递推法的基本思想()。 A.不断用变量的旧值递推新值的过程 B.把全部可行的解空间不断分割为越来越小的子集(称为分支),并为每个子集内的解的值计算一个下界或上界 C.将原问题分解为相似的子问题,在求解的过程中通过子问题的解求出原问题的解 D.一种用若干步可重复的简运算(规律)来描述复杂问题的方法
8.strstr()函数用来()。 A.字符串连接 B.比较字符 C.求字符位置 D.求子串位置
9.不属于C语言字符常量的是()。 A.‘65' B.'\027' C.'A' D.'\n'
10.下面叙述中正确的是( ) A.栈是“先进先出”的线性表 B.队列是“先进后出”的线性表 C.循环队列是非线性结构 D.有序线性表既可以采用顺序存储结构,也可以采用链式存储结构
11.一个算法中的语句的()被称为语句频度或时间频度。 A.执行时间 B.占用空间 C.执行速度 D.执行次数
12.n个结点的完全有向图含有边的数目()。 A.n*n B.n(n+1) C.n/2 D.n*(n-l)
13.()命令用来显示ASCII码文件的内容。 A.dir B.cd C.type D.fc
14.能正确进行字符串赋值、赋初值的语句组是()。 A.char s[5]={'a','e','i','o','u'}; B.char *s; s="good!"; C.char s[5]="good!"; D.char s[5]="good!";
15.十进制,就表示某一位置上的数运算时是逢()进一位。 A.2 B.8 C.9 D.10
16.变量名=属性 + 类型 + 对象描述,其中每个对象的名称都要有明确含义,可以取对象的名字全称或名字的一部分,这种命名规则是()。 A.匈牙利命名法 B.骆驼命名法 C.下划线命名法 D.帕斯卡命名法
17.数制是人们利用( )进行计数的一种科学方法。 A.数字 B.符号 C.字母 D.图形
18.遗传算法主要模拟生物中的()。 A.遗传、复制、传递和分裂 B.遗传、突变、选择和杂交 C.遗传、突变、传递和转录 D.遗传、复制、转录和逆转录
19.有以下程序,执行后的输出结果是()。 fun(int x) { int p; if(x==0||x==1) return (3); p=x-fun(x-2); return p; } main() { printf(“%d\n”,fun(7)); } A.7 B.3 C.2 D.0
20.分枝定界法的基本思想()。 A.不断用变量的旧值递推新值的过程 B.把全部可行的解空间不断分割为越来越小的子集(称为分支),并为每个子集内的解的值计算一个下界或上界 C.将原问题分解为相似的子问题,在求解的过程中通过子问题的解求出原问题的解 D.一种用若干步可重复的简运算(规律)来描述复杂问题的方法
二、多选题 (共 4 道试题,共 16 分) 21.字符串有关的格式字符有( )。 A."%c" B."%d" C."%f" D."%s"
22.递归算法的执行过程分()和()两个阶段。 A.递归 B.递推 C.回归 D.回溯
23.设计递归算法有两点最为关键()和()。 A.确定递推公式 B.确定边界(终了)条件(递归出口) C.每次递归调用,都必须向基本条件前进 D.如果结果已知,那么,不用再重复调用递归
24.顺序结构、选择结构、循环结构三种结构共同特点是() A.只有一个入口 B.只有一个出口 C.结构内的每一部分都有机会被执行到(不存在死语句) D.结构内不存在死循环(永远执行不完的循环)。
三、判断题 (共 22 道试题,共 44 分) 25.归并排序是一种稳定的排序方法。
26.算法的空间复杂度是指算法需要消耗的空间资源。
27.在深度为7的满二叉树中,度为2的结点个数为64。
28.注释内容太多会影响程序的执行效率。
29.字符数组要求其最后一个元素是‘\0’。
30.编辑与编译是一回事。
31.一棵二叉树有10个度为1的结点,7个度为2的结点,则该二叉树共有24个结点。
32.含有空格字符的串称为空格串,其长度为0。
33.在顺序表中进行结点的删除操作平均须移动一半结点。
34.在前序遍历二叉树的序列中,任何结点的子树上的所有结点,都是直接跟在该结点之后。
35.在有n个顶点的有向图中,每个顶点的度最大可达2*(n-1)。
36.递推就是在函数里调用自身。
37.栈和队列都是线性结构。
38.递推利用已知或已求出的结果迭代出下一步的结果;而递归则反之,要求出这一步的结果需要先去求上一步或上几步的结果(即多重迭代),往往会重复计算大量的子问题。并且递推省去了递归的栈操作。
39.某二叉树由5个度为2的结点以及3个度为1的结点,则该二叉树中共有15个结点。
40.C程序执行的入口是main()函数,所以main函数必须放在程序的开头。
41.在使用递归策略时,必须有一个明确的递归结束条件,称为递归入口。
42.能采用递归描述的算法通常有这样的特征:为求解规模为N的问题,设法将它分解成规模较小的问题,然后从这些小问题的解很容易构造出大问题的解,并且这些规模较小的问题也能采用同样的分解和综合方法,分解成规模更小的问题,并从这些更小问题的解构造出规模较大问题的解。特别地,当规模N=1时,能直接得解。
43.递推中的顺推法是指从已知条件出发,逐步推出要解决的问题。
44.scanf()、printf()可以输入输出几个字符串。
45.快速排序的时间复杂度为O(n*n)。
46.排序的关键操作是:一是比较两个关键字大小,二是将记录从一个位置移动到另一个位置。 奥鹏,国开,广开,电大在线,各省平台,新疆一体化等平台学习
详情请咨询QQ:3494317897 微信:aopy98 |