测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

分类题库

C++编程题库

按题型、年份与知识点筛选,快速定位练习题。

共 30 题 单选

题目列表

共 30 题
A67900 小朋友们去邻里拜年,每个家里有不同数量的糖果。规则是:不能连续进入两个相邻的房子(即不能同时取相邻两家的糖果)。目标是拿到最多糖果。以下是代码实现,请补全横线。1 int visit(vector<int>& nums) { 2026年 动态规划 数组 状态转移 单选 A67899 元宵节晚上,小朋友沿着一条发光石板路前进,每次可向前走 1 块或 2 块石板。动态规划定义如下:dp[i] = dp[i - 1] + dp[i - 2] ,下面关于 dp[i] 的含义最合适的是( )。 2026年 动态规划 递推关系 状态定义 单选 A67862 在使用Floyd算法求任意两点间最短路径时,时间复杂度为O(V3)。若在某次算法执行前,已经用 Dijkstra 算法正确求出了所有点对的最短路并存入了 dist 数组。如果此时继续对该 dist 数组执行一次完整的 Floyd 算法过程(无任何提前终止),执行完毕后 dist 数组内的值( )。 2026年 动态规划 最短路径 Floyd算法 单选 A67861 下列代码试图实现Floyd算法求所有点对之间的最短路径,横线处应填入( )。1 void floyd(int n, int dist[][MAXN]) { 2026年 动态规划 最短路径 Floyd算法 单选 A67644 小杨正在爬楼梯,需要爬n阶才能到达楼顶。如果每次可以爬1个或2个台阶,下面代码采用递推算法来计算一共有多少种不同的方法可以爬到楼顶,则横线上应填写( )。1 int f(int n) { 2025年 动态规划 循环结构 递推算法 单选 A67606 以下代码实现了0/1背包问题的动态规划解法。假设物品重量为weights[],价值为values[],背包容量为W,横线上应填写( )。1 int knapsack(int W, vector<int>& weights, vector<int>& values) { 2025年 动态规划 状态转移方程 /1背包 单选 A67594 给定一个整数数组nums,找到其中最长的严格上升子序列的长度。 子序列是指从原数组中删除一些元素(或不删除)后,剩余元素保持原有顺序的序列。 下面的程序横线处应该填入的是()1 #include <iostream> 2025年 动态规划 数组遍历 最长上升子序列 单选 A67593 给定一个整数数组nums,找到其中最长的严格上升子序列的长度。 子序列是指从原数组中删除一些元素(或不删除)后,剩余元素保持原有顺序的序列。 该程序的时间复杂度为()1 #include <iostream> 2025年 动态规划 时间复杂度 数组遍历 最长上升子序列 单选 A67591 给定一个m×n的二维网格grid,每个格子中有一个非负整数。请找出一条从左上角 (0, 0) 到右下角 (m-1, n-1) 的路径,使得路径上的数字总和最小。每次只能向右或向下移动。横线处应该填入的是()1 #include <iostream> 2025年 动态规划 二维数组 状态转移 单选 A67590 给定一个整数数组nums,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。下面横线处应该填入的是()1 #include <iostream> 2025年 动态规划 状态转移 最大子数组和 单选 A67579 下面Floyd算法中,横线处应该填入的是( )。1 #include <iostream> 2025年 动态规划 最短路径 Floyd算法 三重循环 单选 A67448 给定 n 个物品和一个最大承重为w 的背包,每个物品有一个重量 wt[i]和价值val[i] ,每个物品只能选择放或 不放。目标是选择若干个物品放入背包,使得总价值最大,且总重量不超过 w。关于下面c++代码,说法正确的是( )。int knapsack1D(int W, vector<int>& wt, vector<int>& val, int n) { 2025年 动态规划 循环结构 背包问题 一维数组优化 单选 A67433 以以下关于动态规划的说法中,错误的是( )。 2025年 动态规划 状态转移 算法复杂度 单选 A67418 下面 LIS 函数试图求出最长上升子序列的长度,横线处应该填入的是( )。int max(int a, int b) { 2025年 动态规划 状态转移 最长上升子序列 单选 A67417 下面 LIS 函数试图求出最长上升子序列的长度,其时间复杂度为( )。#define INT_MIN (-1000) 2025年 动态规划 时间复杂度 二分查找 最长上升子序列 单选 A67325 小杨正在爬楼梯,需要 n阶才能到达楼顶,每次可以爬 1阶或 2阶,求小杨有多少种不同的方法可以爬到 楼顶,横线上应填写( )。int climbStairs(int n) { 2025年 递推 动态规划 循环结构 单选 A67272 给定 n个物品和一个最大承重为 W的背包,每个物品有一个重量 wt[i]和 val[i]价值 ,每个物品只能选择放或 不放。目标是选择若干个物品放入背包,使得总价值最大,且总重量不超过 W,则横线上应填写( )。int knapsack(int W, vector<int>& wt, vector<int>& val, int n) { 2025年 动态规划 状态转移 背包 一维数组优化 单选 A67232 以下关于贪⼼法和动态规划的说法中 ,错误的是( )。 2025年 动态规划 贪心算法 算法比较 单选 A67207 下面程序使用动态规划求两个字符串的最长公共子序列(LCS)长度,横线处应填入的是( )。#include <algorithm> 2025年 字符串 动态规划 最长公共子序列 单选 A67184 已知三个序列: s1 = {3, 1, 8, 2, 5, 6, 7, 4} , s2 = {1, 5, 1, 8, 6, 4, 7, 5, 6} , s3 = {1, 8, 3, 5, 7, 6, 2, 4} 。以下哪个序列是它们的最长公共子序列( )。 2025年 动态规划 最长公共子序列 序列 单选