0 of 25 Questions completed
Questions:
You have already completed the quiz before. Hence you can not start it again.
Quiz is loading…
You must sign in or sign up to start the quiz.
You must first complete the following:
0 of 25 Questions answered correctly
Your time:
Time has elapsed
You have reached 0 of 0 point(s), (0)
Earned Point(s): 0 of 0, (0)
0 Essay(s) Pending (Possible Point(s): 0)
第 1 题 小杨家响应国家“以旧换新”政策,将自家的汽油车置换为新能源汽车,正在准备自编车牌。自编车牌包括5 位数字或英字母,要求第5位必须是数字,前4位中可以有最多1位英文字母。英文字母必须是大写,且不能是O 或I(因为容易与数字0或1混淆)。请问自编车牌共有多少种可能性?( )。
第 2 题 新年到,四家人在一起聚会。其中两家有三口人,另外两家有两口人。现在要安排大家在一张十人圆桌坐 下,要求一家必须相邻就座。由于有“主座”的习俗,每个座位都被认为是不同的。请问共有多少种就座案?( )。
第 3 题 下关于C++类继承的说法,错误的是( )。
第 4 题 使邻接表表达一个简单有向图,图中包含 v 个顶点、 e 条边,则该出边表中边节点的个数为( )
第 5 题 以下将二维数组作为参数的函数声明,哪个是符合语法的?( )。
第 6 题 已知两个点 A 、 B 在平直角坐标系下的坐标分别为(xa, ya) 和(xb, yb) ,并分别定义变量 double xa, ya, xb, yb; 存储坐标。假设直线 AB 的斜率存在,下列哪个表达式可以来表达它?( )。
第 7 题 二项式\((x+y)^6\) 的展开式中\(x^3y^3\) 项的系数是( )。
第 8 题 以下关于动态规划的说法中,错误的是( )。
第 9 题 在下面的程序中,使用整数表示一种组合。整数二进制表示的某一位为1,表示该位对应的数被选中,反之 为0表示未选中。例如,从 0 – 5 这 6 个数中选出 3 个,则 0b111000 代表选中 3, 4, 5 三个数, 0b011001 代表 选中 0, 3, 4 三个数。 zuhe_next 函数按组合对应的整数由大到小的顺序,求出组合 c 的下一个组合。横线处可以填的是( )。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
int intlow2(int c) { return ________; // 在此处填入选项 } int zuhe_next_incur(int c, int n, int l) { if (n == 1) return c; if ((c & (1 << l)) == 0) { int d = intlow2(c); c = (c & ~d); c = (c | (d >> 1)); } else { c = (c & ~(1 << l)); c = zuhe_next_incur(c, n - 1, l + 1); int d = intlow2(c); c = (c | (d >> 1)); } return c; } // 从n个数中选m个,当前组合为c int zuhe_next(int c, int n, int m) { return zuhe_next_incur(c, n, 0); } |
第 10 题 下程序的输出为( )。
1 2 3 4 5 6 7 8 9 10 11 |
#include <iostream> using namespace std; int main() { int N = 15, cnt = 0; for (int x = 0; x + x + x <= N; x++) for (int y = x; x + y + y <= N; y++) for (int z = y; x + y + z <= N; z++) cnt++; cout << cnt << endl; return 0; } |
第 11 题 下面最长公共序列程序中,横线处应该填的是( )。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
#define MAX(A, B) (((A) > (B)) ? (A) : (B)) #define MIN(A, B) (((A) < (B)) ? (A) : (B)) int dp[MAX_L + 1][MAX_L + 1]; int LCS(char str1[], char str2[]) { int len1 = strlen(str1); int len2 = strlen(str2); for (int i = 0; i < len1; i++) for(int j = 0; j < len2; j++) if (str1[i] == str2[j]) dp[i + 1][j + 1] = dp[i][j] + 1; else ________; // 在此处填入选项 return dp[len1][len2]; } |
第 12 题 下列Dijkstra算法中,横线处应该填的是( )。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
typedef struct Edge { int in, out; // 从下标in顶点到下标out顶点的边 int len; // 边长度 struct Edge * next; } Edge; // v:顶点个数,graph:出边邻接表,start:起点下标,dis:输出每个顶点的最短距离 void dijkstra(int v, Edge * graph[], int start, int * dis) { const int MAX_DIS = 0x7fffff; for (int i = 0; i < v; i++) dis[i] = MAX_DIS; dis[start] = 0; int * visited = new int[v]; for (int i = 0; i < v; i++) visited[i] = 0; visited[start] = 1; for (int t = 0; ; t++) { int min = MAX_DIS, minv = -1; for (int i = 0; i < v; i++) { if (visited[i] == 0 && min > dis[i]) { min = dis[i]; minv = i; } } if (minv < 0) break; visited[minv] = 1; for (Edge * e = graph[minv]; e != NULL; e = e->next) { ________; // 在此处填入选项 } } delete[] visited; } |
第 13 题 假设图graph中顶点数v、边数e,上题程序的时间复杂度为( )。
第 14 题 下面的快速排序程序中,两处横线处分别应填的是( )
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
void quick_sort(int a[], int n) { if (n <= 1) return; int pivot = 0, l = 0, r = n - 1; while (________) { // 在此处填入选项 while (r > pivot && a[r] >= a[pivot]) r--; if (r > pivot) { int temp = a[pivot]; a[pivot] = a[r]; a[r] = temp; pivot = r; } while (l < pivot && a[l] <= a[pivot]) l++; if (l < pivot) { int temp = a[pivot]; a[pivot] = a[l]; a[l] = temp; pivot = l; } } quick_sort(a, pivot); quick_sort(________); // 在此处填入选项 } |
第 15 题 上题程序的时间复杂度为( )。
第 16题 表达式 '3' + '5' 的结果为 '8' ,类型为 char 。
第 17 题 在C++语中,可以在函数内定义结构体,但该结构体类型只能在该函数内使用。
第 18题 对n个元素的数组进排序,快速排序和归并排序的平均时间复杂度都为O(nlogn) 。但快速排序存在退化情 况,使得时间复杂度升高至O(n^2) ;归并排序需要额外的空间开销。
第 19 题 二维数组的最后一维在内存中一定是连续的,但第一维在内存中可能不连续。
第20题 使 math.h 或 cmath 头件中的函数,表达式 log(1000) 的结果类型为 double 、值约为 3 。
第 21题 你有三种硬币,分别面值2元、5元和7元,每种硬币都有足够多。买一本书需要27元,则有8种硬币组合(组合与顺序关,“1个2元+1个5元+1个2元”与“1个5元+2个2元”认为是同样的组合)可以正好付清,且不需要对找方钱。
第 22题 使哈希函数 f(x) = x % p 建立键值为 int 类型的哈希表,只要 p 取小于等于哈希表大小的素数,可保证不发生碰撞。
第23题 杨辉三角中的第n行 、第m 项,即为将二项式\((a+b)^n\) 展开后\(a^{n-m}b^m\) 项的系数。
第 24题 判断图是否连通,可以通过度优先搜索实现。
第 10 题 要求解元次程\(x^2+ax+b=0\) ,需要先判断表达式\( a ^ 2 - b * 4 >= 0\) 是否为真。