分类题库
C++编程题库
按题型、年份与知识点筛选,快速定位练习题。
题目列表
共 4008 题
A67464
归并排序的最好、最坏和平均时间复杂度均为0(n log n).
2025年
判断
A67463
查字典这个小学生必备技能,可以把字典视为一个已排序的数组。假设小杨要查找一个音首字母为 g 的单 词,他首先翻到字典约一半的页数,发现该页的首字母是 m ,由于字母表中 g 位于 m 之前,所以排除字典后半部 分,查找范围缩小到前半部分;不断重复上述步骤,直至找到首字母为 g 的页码。这种查字典的一系列操作可看作 二分查找。
2025年
判断
A67462
求解下图中A点到D点最短路径,其中A到B之间的12可以理解为距离。求解这样的问题常用Dijkstra算法,其 思路是通过逐步选择当前距离起点最近的节点来求解非负权重图(如距离不能为负值)单源最短路径的算法。从该 算法的描述可以看出,Dijkstra算法是贪心算法。
2025年
判断
A67461
分治算法将原问题可以分解成规模更小的子问题,使得求解问题的难度降低。但由于分治算法需要将问题进 行分解,并且需要将多个子问题的解合并为原问题的解,所以分治算法的效率通常比直接求解原问题的效率低。
2025年
判断
A67460
函数 puzzle 定义如下,则调用 puzzle(7) 程序会无限递归。int puzzle(int n) {
2025年
判断
A67459
如下为线性筛法,用于高效生成素数表,其核心思想是每个合数只被它的最小质因数筛掉一次,时间复杂 度为0(n)。vector<int> linearSieve(int n) {
2025年
判断
A67458
奖品兑换
2025年
编程题
A67457
最大公因数
2025年
编程题
A67456
下列哪一项不是面向对象编程的基本特征?
2025年
单选
A67455
为了让 Dog 类的构造函数能正确地调用其父类 Animal 的构造方法,横线线处应填入( )。
2025年
单选
A67454
横线处填入代码Animal(name),C++代码执行结果是( )。
2025年
单选
A67453
以下关于栈和队列的C++代码,执行后输出是( )。stack<int> s;
2025年
单选
A67452
在一个循环队列中, front 是指向队头的指针, rear 指向队尾的指针,队列最大容量为 maxSize 。判断 队列已满的条件是( )。
2025年
单选
A67451
请将下列 C++ 实现的深度优先搜索(DFS)代码补充完整,横线处应填入( )。struct TreeNode {
2025年
单选
A67450
给定一个二叉树,返回每一层中最大的节点值,结果以数组形式返回,横线处应填入( )。#include <vector>
2025年
单选
A67449
下面C++代码实现一个二叉排序树的插入函数(没有相同的数值),横线处应填入( )。struct TreeNode {
2025年
单选
A67448
给定 n 个物品和一个最大承重为w 的背包,每个物品有一个重量 wt[i]和价值val[i] ,每个物品只能选择放或 不放。目标是选择若干个物品放入背包,使得总价值最大,且总重量不超过 w。关于下面c++代码,说法正确的是( )。int knapsack1D(int W, vector<int>& wt, vector<int>& val, int n) {
2025年
单选
A67447
构造函数可以被声明为 virtual。
2025年
判断
A67446
给定一组字符及其出现的频率,构造出的哈夫曼树是唯一的。
2025年
判断
A67445
为了实现一个队列,使其出队操作( pop )的时间复杂度为 O(1)并且避免数组删除首元素的 问题,一 种常见且有效的方法是使用环形数组,通过调整队首和队尾指针来实现。
2025年
判断