若对n个元素进行直接插入排序,则进行任一趟排序的过程中,为寻找插入位置而需要的时间复杂度为()

  • A+

答案查询网公众号已于近期上线啦

除基本的文字搜题外,准备上线语音搜题和拍照搜题功能!微信关注公众号【答案查询网】或扫描下方二维码即可体验。

(1)【◆题库问题◆】:[单选] 若对n个元素进行直接插入排序,则进行任一趟排序的过程中,为寻找插入位置而需要的时间复杂度为()
A.O(1)
B.O(n)
C.O(n2)
D.O(log2n

【◆参考答案◆】:B

(2)【◆题库问题◆】:[单选] n个顶点的完全有向图中含有()。
A.n-1条有向边
B.n条有向边
C.n(n-1)/2条有向边
D.n(n-1)条有向边

【◆参考答案◆】:D

(3)【◆题库问题◆】:[问答题] 试用权集合{12,4,5,6,1,2}构造哈夫曼树,并计算哈夫曼树的带权路径长度。

【◆参考答案◆】:WPL=12*1+(4+5+6)*3+(1+2)*4=12+45+12=69

(4)【◆题库问题◆】:[单选] 在对n个元素进行冒泡排序的过程中,至少需要()趟完成。
A.1
B.n
C.n-1
D.n/2

【◆参考答案◆】:A

(5)【◆题库问题◆】:[填空题] 遍历图的基本方法有深度优先搜索和广度优先搜索,其中()是一个递归过程。

【◆参考答案◆】:深度优先搜索

(6)【◆题库问题◆】:[判断题] 距阵中的数据元素可以是不同的数据类型。
A.正确
B.错误

【◆参考答案◆】:正确

(7)【◆题库问题◆】:[问答题] 具有n个顶点的强连通图至少有多少条边?这样的图应该是什么形状?

【◆参考答案◆】:
具有n个顶点的强连通图至少有n条边,这样的图是一个由n个顶点构成的环。
强连通图是相对于有向图而言的。由于强连通图要求图中任何两个顶点之间能够相互连通,因此每个顶点至少要有一条以该顶点为弧头的弧和一条以该顶点为弧尾的弧,每个顶点的入度和出度至少各为1,即顶点的度至少为2,这样根据图的顶点数、边数以及各项点的度三者之间的关系计算可得:边数=2×n/2=n。

(8)【◆题库问题◆】:[单选] 用邻接表表示图进行广度优先遍历时,通常是采用()来实现算法的。
A.栈
B.队列
C.树
D.图

【◆参考答案◆】:B

(9)【◆题库问题◆】:[问答题] 编写程序,将若干整数从键盘输入,以单链表形式存储起来,然后计算单链表中结点的个数(其中指针P指向该链表的第一个结点)。

【◆参考答案◆】:编写C程序如下(已上机通过):全局变量及函数提前说明:---------------------------------#include#includetypedefstructliuyu{intdata;structliuyu*link;}test;liuyu*p,*q,*r,*head;intm=sizeof(test);voidmain()/*第一步,从键盘输入整数,不断添加到链表*/{inti;head=(test*)malloc(m);/*m=sizeof(test);*/p=head;i=0;while(i!=-9999){printf("/ninputaninteger[stopby’-9999’]:");scanf("%d",&i);p->data=i;/*inputdataissaved*/p->link=(test*)malloc(m);/*m=sizeof(test));*/q=p;p=p->link;}q->link=NULL;/*原先用p->link=NULL似乎太晚!*/p=head;i=0;/*统计链表结点的个数并打印出来*/while(p->link!=NULL){printf("%d",p->datA.;p=p->link;i++;}printf("
nodenumber=%d
",i-1);/*结点的个数不包括-9999*/}

(10)【◆题库问题◆】:[单选] 如果想在4092个数据中只需要选择其中最小的5个,采用()方法最好。
A.起泡排序
B.堆排序
C.锦标赛排序
D.快速排序

【◆参考答案◆】:B

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: