2025年秋江苏开放大学算法设计与分析形考作业2答案

内容查看

一、2025年秋江苏开放大学算法设计与分析形考作业2单选题答案

1、采用顺序查找方法查找长度为n的线性表时,每个元素的平均查找长度为(  )。

A、n/2

B、(n-1)/2

C、(n+1)/2

D、 n

学生答案:C

2、对于顺序存储的有序表(5,12,20,26,37,42,46,50,64),若采用折半查找元素26的比较次数为()。

A、5

B、4

C、3

D、2

学生答案:B

3、用冒泡排序对4,5,6,3,2,1进行从小到大排序,第三趟排序后的状态为()

A、4 3 2 1 5 6

B、4 5 3 2 1 6

C、 3 2 1 4 5 6

D、2 1 3 4 5 6

学生答案:C

4、当待排序序列基本有序时,以下排序方法中,()最不利于其优势的发挥。

A、冒泡排序

B、直接插入排序

C、直接选择排序

D、快速排序

学生答案:D

5、数据序列(8,9,10,4,5,6,20,1,2)只能是下列排序算法中的(  )两趟排序后的结构。

A、选择排序

B、堆排序

C、冒泡排序

D、插入排序

学生答案:D

6、 就平均性能而言,目前最好的内排序方法是(  )排序法。

A、冒泡

B、交换

C、快速

D、希尔插入

学生答案:C

7、 在对一组关键字序列{70,55,100,15,33,65,50,40,95},进行直接插入排序时,把65插入,需要 比较()次。

A、4

B、2

C、8

D、6

学生答案:B

8、穷举法的适用范围()。

A、不适合设计算法

B、 解的个数极多的问题

C、解的个数有限且可一一列举

D、一切问题

学生答案:C

9、在待排序序列局部有序时,效率最高的排序算法是()。

A、归并排序

B、 直接插入排序

C、 快速排序

D、直接选择排序

学生答案:B

10、在下列排序算法中,哪一种算法的时间复杂度与初始排序序列无关()。

A、快速排序

B、直接插入排序

C、直接选择排序

D、冒泡排序

学生答案:C

11、用冒泡排序法对数据7,6,3,9,2从小到大排序,共需经过()趟排序已可以得到正确结果?

A、2

B、5

C、4

D、3

学生答案:C

12、递归过程或函数调用时,处理参数及返回地址,要用一种称为(  )的数据结构。

A、线性表

B、栈

C、队列

D、多维数组

学生答案:B

13、 线性表若采用链式存储结构时,要求内存中可用存储单元的地址(  )。

A、连续或不连续都可以

B、部分地址必须是连续的

C、必须是连续的

D、一定是不连续的

学生答案:A

14、算法分析中,记号O表示(  )。

A、渐进下界

B、渐进上界

C、紧渐进界

D、非紧上界

学生答案:B

15、穷举法的适用范围是()。

A、不适合设计算法

B、解的个数极多的问题

C、一切问题

D、解的个数有限且可一一列举

学生答案:D

二、2025年秋江苏开放大学算法设计与分析形考作业2填空题答案

1、在对一组记录序列{50,40,95,20,15,70,60,45,80}进行直接选择排序时,第4次交换和选择后,未排序记录为()。

学生答案:{50,70,60,95,80}

2、在直接插入排序和直接选择排序中,若初始记录序列基本有序,则选用()。

学生答案:直接插入排序

3、在对一组记录序列{50,40,95,20,15,70,60,45,80}进行直接插入排序时,当把第7个记录60插入到有序表中时,为寻找插入位置需比较()次。

学生答案:3

4、在插入排序、希尔排序、选择排序、快速排序、堆排序、归并排序和基数排序中,平均比较次数最少的是()。

学生答案:快速排序

5、对n个结点进行快速排序,最大的比较次数是()。

学生答案:n(n-1)/2

6、以顺序查找方法从长度为n的顺序表或单链表中查找一个元素时,平均查找长度为()。

学生答案:(n+1)/2

7、n个记录的冒泡排序算法所需的最大移动次数为(),最小移动次数为()。

学生答案:3n(n-1)/2;0

8、以折半查找方法在一个查找表上进行查找时,该查找表必须组织成()存储的() 表。

学生答案:顺序;有序

9、从有序表(12,18,30,43,56,78,82,95)中分别折半查找43和56元素时,其比较次数分别为()和()。

学生答案:1;3

10、下列是基于分治策略的快速排序算法的部分代码,请补全空格中缺失的代码。

template< class Type >

void QuickSort( Type a[], int p, int r )

{   if ( p < r )

{   int q = Partition( a, p, r );

()

()

}

}

学生答案:QuickSort( a, p, q – 1 );QuickSort( a, q + 1, r )

三、2025年秋江苏开放大学算法设计与分析形考作业2简答题答案

题型:简答题主观题分值10分难度:一般得分:10

1什么是递归算法,递归算法的特点是什么。

学生答案:

1 )递归算法:是一个模块函数、进程除可挪用其它模块函数、进程外,还可以直接或间接地挪用自身的算法。

2) 递归算法特点:

①每一个递归函数都必需有非递归概念的初值;不然,递归函数无法计算;递归终止条件

②递归顶用较小自变量函数值来表达较大自变量函数值;递归方程式

1 )递归算法:是一个模块函数、进程除可挪用其它模块函数、进程外,还可以直接或间接地挪用自身的算法。

题型:简答题主观题分值16分难度:中等得分:

16

2【算法设计题】使用欧几里得公式写一个递归函数gcd(m,n),用来计算m与n的最大公约数。

请给出具体实现代码。

学生答案:

#include<stdio.h>

int gcd(int m, int n)

{

if(m%n==0)

return n;

else

return gcd(n,m%n);

}

int main()

{

printf(“%d\n”,gcd(18,4));

return 0;

}

题型:简答题主观题分值16分难度:简单得分:16

3【算法设计题】试打印出2~100中的所有素数。

学生答案:

#include<stdio.h>

int main()

{

int j,i;

for (i=2;i<=100;i++)

{

for(j=2;j<i;j++)

{

if(i%j==0)

break;

}

if(j==i)

printf(“%d\n”,i);

}

return 0;

}

0
觉得这篇文章对你有用的话,就打赏一下支持文章作者
课程作业辅导,点击图片加微信,有偿服务

评论0

请先

站点公告

本站已经将所有内容都转移到下方微信小程序里,如果有需要答案可以扫码下方微信小程序寻找

显示验证码

社交账号快速登录