刷题Day_02

本文深入探讨了数据结构如顺序表、链表、数组、堆栈及算法如快速排序、堆排序的原理与应用,解析了不同场景下的最优选择,并讨论了递归调用的实现机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算,则利用(A)存储方式最节省时间。
A.顺序表
B.双链表
C.带头结点的双循环链表
D.单循环链表
解析:若是存取方便则直接选择顺序表。
2.一组记录的关键字为(46,79,56,38,40,84),则利用快速排序的方法,以第一个记录为基准得到的一次划分结果为(C)。
A.38,40,46,56,84,79
B.40,38,46,79,56,84
C.40,38,46,56,79,84
D.40,38,46,84,56,79
解析:
在这里插入图片描述
3.对大小均为n的有序表和无序表分别进行顺序查找,在等概率查找的情况下,对于查找成功,它们的平均查找长度是相同的,而对于查找失败,它们的平均查找长度是不同的(A)
A.对
B.错
4.将整数数组( 7-6-3-5-4-1-2 )按照堆排序的方式进行升序排列,请问在第一轮排序结束之后,数组的顺序是(C)
A.1-2-3-4-5-6-7
B.2-6-3-5-4-1-7
C.6-5-3-2-4-1-7
D.5-4-3-2-1-6-7
解析:
在这里插入图片描述

5.如果要求一个线性表既能较快地查找,又能适应动态变化的要求,可以采用下列哪一种查找方法。(A)
A.分块
B.顺序
C.折半
D.哈希
6.下列排序法中,每经过一次元素的交换会产生新的逆序的是(A )
A.快速排序
B.冒泡排序
C.简单插入排序
D.简单选择排序
解析:

在这里插入图片描述
7.将整数数组(7-6-3-5-4-1-2)按照堆排序的方式原地进行升序排列,请问在整个排序过程中,元素3的数组下标发生过__C__次改变。
A.0
B.1
C.2
D.3
E.4
F.5
解析:
在这里插入图片描述
8.数组定义为”int a[4][5];”, 引用”*(a+1)+2″表示(B)(从第0行开始)
A.a[1][0]+2
B.a数组第1行第2列元素的地址
C.a[0][1]+2
D.a数组第1行第2列元素的值
解析:
在这里插入图片描述
10.哪种数据结构用于执行递归调用(C)
A.数组
B.链表
C.堆栈
D.二叉树
解析:递归是栈实现的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值