GESP2025年3月认证C++五级( 第一部分选择题(9-15))


🏆 第9题:不稳定排序是谁?

✅ 答案:A(选择排序)


1、🧠 故事理解

小勇士来到"排序学院",每个排序都在排队。

👦 有两个同学:

  • 小红(成绩 90)

  • 小蓝(成绩 90)

👉 稳定排序:排完之后,顺序不变

👉 不稳定排序:可能交换,顺序乱掉


2、🧩 核心思维

👉 判断稳定性只问一句:

"排序过程中,会不会跨位置交换?"


3、🔥 快速判断口诀

排序 是否稳定
冒泡
插入
归并
选择 ❌(会乱换)

👉 选择排序每次"直接换最小值",容易把相同元素顺序打乱



🏆 第10题:快速排序分区

✅ 答案:B


1、🧠 故事理解

快速排序像"分队游戏":

👉 选一个队长(pivot)

👉 比他小的站左边

👉 比他大的站右边


2、🧩 思维模型

循环过程中要维护:

复制代码
[小的区域] [未处理] [大的区域]

3、🧠 正确操作

复制代码
if (arr[j] < pivot) {
    i++;
    swap(arr[i], arr[j]);
}

👉 先扩大"小区间",再交换


4、🚨 常见错误

❌ 顺序写反

❌ 比较符号错(> 或 ==)


5、🎯 记忆口诀

👉 "小的往前放"



🏆 第11题:二分查找次数

✅ 答案:C(7次)

1、🧠 故事理解

小勇士在猜一个1~100的数字,每次都对半砍:

复制代码
100 → 50 → 25 → 13 → 7 → 4 → 2 → 1

最多7次!


2、🧩 思维模型

👉 二分查找次数 ≈

复制代码
log₂(n)

3、🎯 快速估算技巧

n 次数
100 ≈7
1000 ≈10

👉 记住:2⁷=128



🏆 第12题:二分查找mid写法

✅ 答案:A


1、🧠 故事理解

小勇士算中点:

复制代码
mid = (left + right) / 2

看起来没问题......

💥 但如果数很大,会溢出!


2、🧩 正确思维

👉 安全写法:

复制代码
mid = left + (right - left) / 2

3、🎯 核心点

不是为了好看,而是:

防止 left + right 爆掉


4、🚨 考试策略

看到 mid:

👉 优先选"防溢出写法"



🏆 第13题:贪心算法本质

✅ 答案:A


1、🧠 故事理解

小勇士买东西:

👉 每次都选"当前最好的"

这就是贪心!


2、🧩 思维模型

👉 贪心 =

复制代码
每一步都选当前最优

3、🚨 关键区别

算法 特点
贪心 局部最优
动态规划 全局最优

4、❗ 易错点

❌ "一定得到最优解" → 错

👉 有些问题贪心会错



🏆 第14题:分治求最大值

✅ 答案:D


1、🧠 故事理解

小勇士找最大值:

👉 把数组一分为二

👉 左边找最大

👉 右边找最大

👉 比一下


2、🧩 分治三步(必须掌握🔥)

复制代码
1. 分(拆)
2. 治(递归)
3. 合(合并结果)

3、🧠 正确逻辑

复制代码
return max(leftMax, rightMax);

4、🚨 常见错误

❌ return left + right

❌ return left * right

👉 这不是"求最大",而是乱算



🏆 第15题:高精度乘法进位

✅ 答案:B


1、🧠 故事理解

小勇士在做"大数乘法":

每一位要处理:

👉 原来的值 + 进位


2、🧩 思维模型(关键🔥)

复制代码
temp = 当前值 + 进位

3、🧠 正确代码

复制代码
int temp = c[k] + carry;
c[k] = temp % 10;
carry = temp / 10;

4、🚨 易错点

错误 原因
只用 c[k] 忘记进位
减 carry 没意义
乘 carry 完全错误

🎯知识点总结:


🧠 ① 排序理解

👉 稳定 vs 不稳定(交换方式)


🧠 ② 快速排序思想

👉 分区 + 不变量


🧠 ③ 二分查找

👉 log级别 + 防溢出写法


🧠 ④ 算法思想

👉 贪心 vs 分治


🧠 ⑤ 高精度计算

👉 每一位 = 当前值 + 进位


相关推荐
穿条秋裤到处跑3 小时前
每日一道leetcode(2026.04.28):获取单值网格的最小操作数
算法·leetcode·职场和发展
leoufung3 小时前
LeetCode 68. Text Justification 题解:贪心与实现细节
算法·leetcode·职场和发展
WL_Aurora4 小时前
【每日一题】前缀和
python·算法
迷途之人不知返4 小时前
stack和queue的学习与模拟实现
c++
汉克老师4 小时前
GESP2025年3月认证C++五级( 第二部分判断题(1-10))
c++·算法·分治算法·线性筛法·gesp5级·gesp五级
橙子也要努力变强4 小时前
volatile与信号
linux·服务器·c++
洛水水4 小时前
【力扣100题】17.K 个一组翻转链表
算法·leetcode·链表
洛水水5 小时前
【力扣100题】16.两两交换链表中的节点
算法·leetcode·链表
wuweijianlove5 小时前
算法教学中的抽象建模与动态可视化设计的技术7
算法