第二节-03 队列与循环队列
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
第二节-03 队列与循环队列
CSP-J 第一轮专项训练。 本题全部为单项选择题,提交后自动判分。
1.
队列(queue)的基本特点是( )。
{{ select(1) }}
- A. 后进先出
- B. 先进先出
- C. 随机进出
- D. 只能保存字符
2.
对于 queue<int> q,查看队首和队尾分别使用( )。
{{ select(2) }}
- A.
top()和bottom() - B.
front()和back() - C.
first()和last() - D.
head()和tail()
3.
队列初始为空,执行 push(2), push(5), push(8), pop() 后,队首为( )。
{{ select(3) }}
- A. 2
- B. 5
- C. 8
- D. 空
4.
阅读程序:
queue<int> q;
q.push(3);
q.push(7);
q.push(9);
q.pop();
cout << q.front() << ' ' << q.back();
输出为( )。
{{ select(4) }}
- A. 3 9
- B. 7 9
- C. 7 7
- D. 9 7
5.
下列场景中最适合使用队列的是( )。
{{ select(5) }}
- A. 撤销最近操作
- B. 括号匹配
- C. 按到达先后处理任务
- D. 反转字符串
6.
一个长度为 8 的循环数组,当前位置为 7,则 (7+1)%8 的结果是( )。
{{ select(6) }}
- A. 0
- B. 1
- C. 7
- D. 8
7.
循环队列使用长度为 N 的数组,并采用“空出一个位置来区分队满与队空”的方法,则最多存放( )个元素。
{{ select(7) }}
- A. N+1
- B. N
- C. N-1
- D. N/2
8.
阅读程序:
queue<int> q;
for (int i = 1; i <= 5; ++i) q.push(i);
q.pop();
q.pop();
cout << q.size();
输出为( )。
{{ select(8) }}
- A. 2
- B. 3
- C. 4
- D. 5
9.
队列最初为 [1,2,3]。执行一次“取出队首并重新放到队尾”,队列变为( )。
{{ select(9) }}
- A. [1,2,3]
- B. [2,3,1]
- C. [3,2,1]
- D. [1,3,2]
10.
广度优先搜索 BFS 常用队列维护待处理结点,主要利用队列的( )。
{{ select(10) }}
- A. 后进先出
- B. 先进先出
- C. 随机访问
- D. 自动排序
粤公网安备44195502000252号