#AG201. 【课堂练习】2.1选择排序基础
【课堂练习】2.1选择排序基础
1.下列关于内存地址的描述正确的是: {{ select(1) }}
- 链表元素地址连续
- 数组支持地址计算访问
- 内存地址由程序手动分配
- 随机读取元素链表效率高
2.在内存中存储多个待办事项时,若需要频繁在中间位置插入新任务,应该优先使用:{{ select(2) }}
- 链表
- 有序数组
- 二维数组
- 哈希表
3.选择排序的时间复杂度是: {{ select(3) }}
- 1
- O(n)
- O(n log n)
- O(n²)
4.若数组的起始地址是100,每个元素占4字节,则第5个元素的地址是: {{ select(4) }}
- 116
- 120
- 124
- 128
5.微信登录功能需要快速验证用户名是否存在,若使用二分查找,数据必须: {{ select(5) }}
- 存储在链表中
- 使用链表数组混合结构
- 有序且支持随机访问
- 每个用户名长度相同
6.选择排序的核心操作是: {{ select(6) }}
- 交换相邻元素
- 递归分治
- 每次选取极值元素
- 建立堆结构
7.下列关于链表的描述错误的是: {{ select(7) }}
- 插入操作时间复杂度为O(1)
- 可以动态调整存储空间
- 最后一个节点指向空地址
- 支持快速随机访问
8.在Python中对列表fruits执行fruits.pop(0)删除操作时,最接近的时间复杂度是: {{ select(8) }}
- O(1)
- O(n)
- O(log n)
- O(n²)
9.数组删除最后一个元素的时间复杂度是 {{ input(9) }} 。
10.微信用户名存储采用链表数组混合结构,以字母Q开头的用户名会被分配到第{{ input(10) }}个链表(假设从0开始)。