#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开始)。