GESP2025年6月认证C++五级( 第一部分选择题(1-8))
2026/4/28 21:46:28 网站建设 项目流程


🎯 第1题:链表比数组插入更有效率

1、🌈故事

数组骑士 🧱 和 链表精灵 🔗 比赛:

👉 “谁在插入、删除时更快?”


2、🧠一步一步分析

① 数组:

  • 插入一个数 👉 后面都要往后挪 ❌

  • 删除一个数 👉 后面都要往前挪 ❌

② 链表:

  • 插入 👉 改指针就行 ✅

  • 删除 👉 改指针就行 ✅


3、✅结论

👉 链表更擅长:插入和删除

🎉答案:C

题目中,其他答案都是数组的专长。


4、📌小口诀

👉 数组要搬家,链表改指针



🎯 第2题:怎么判断链表是空的?

1、🌈故事

守门员问:

👉 “这个链表里面有没有人?”


2、🧠一步一步分析

判断“空”就是看:

① head 是不是空 👉 ✅
② tail 是不是空 👉 ✅
③ size 是不是 0 👉 ✅


3、❌错误选项:

👉head.data == 0

问题:

  • head 是指针!

  • 不能直接用.data


4、✅结论

🎉答案:C


5、📌小口诀

👉 判断空,看有没有节点,不看数值



🎯 第3题:往链表尾巴加人

1、🌈故事

队伍后面来了一个新同学 👦

👉 要接到最后!


2、🧠一步一步操作

① 让原尾巴指向新节点
👉tail->next = newNode

② 新节点指回原尾巴
👉newNode->prev = tail

③ 更新尾巴
👉tail = newNode


3、✅结论

🎉答案:D


4、📌小口诀

👉 先连后指,最后换尾



🎯 第4题:约瑟夫淘汰游戏

1、🌈故事

一圈小朋友,每数到 k 淘汰一个 😵

现在要删除当前人!


2、🧠正确步骤

① 断开链
👉prev->next = p->next

② 删除节点
👉delete p

③ 移动到下一个
👉p = prev->next


⚠️顺序不能乱!


3、✅结论

🎉答案:A


4、📌小口诀

👉 先断链 → 再删除 → 再移动



🎯 第5题:质数判断的小技巧

1、🌈故事

质数侦探在找(合数)


2、🧠关键规律

👉 大于3的质数,都在:

👉6k ± 1

例如:

  • 5 = 6×1 -1

  • 7 = 6×1 +1

  • 11 = 6*2 -1

  • 13 = 6*2 +1


3、🧠分析选项

A ❌(代码已经特判5)
B ❌(不用检查到 n/2)
C ✅(核心规律)
D ❌ (慢了)


4、✅结论

🎉答案:C


5、📌小口诀

👉 质数藏在 6k±1



🎯 第6题:最大公约数(谁更快)

1、🌈故事

两个方法比赛:

  • 🐢 暴力枚举

  • ⚡ 欧几里得算法


2、🧠分析

👉 欧几里得(递归)更快 ✅


3、❌错误点:

👉 改成i > 1

问题:

  • 如果最大公约数是1,就找不到了 ❌


4、✅结论

🎉答案:D


5、📌小口诀

👉 gcd 可能是1,不能漏!



🎯 第7题:找质数的三种方法

1、🌈故事

三位选手比赛:

1️⃣ 普通判断(慢)
2️⃣ 埃氏筛(很快)
3️⃣线性筛法比埃氏筛法更快,尤其在处理大范围数据时效率优势显著。


2、🧠比较

👉 速度:

普通 < 埃氏筛 < 线性筛


❌错误说法:

👉 “埃氏筛最快” ,说的太绝对,肯定不正确。


3、✅结论

🎉答案:D


4、📌小口诀

👉 埃氏筛法,线性筛都很快,

👉小范围数据(如 n≤10^6):可以使用埃氏筛

👉大范围数据(如 n≥10^7):一定要使用线性筛



🎯 第8题:唯一分解定理

1、🌈故事

每个数字都有“唯一拆分方式”


2、🧠规律

👉 每个数都能拆成:

👉质数 × 质数 × …

而且:

👉 只有一种拆法!


3、🧠举例

12 = 2 × 2 × 3
不能写成别的组合


4、✅结论

🎉答案:B


5、📌小口诀

👉 一个数 = 唯一的质数乘积


🌟 知识点总结:

1️⃣ 链表插删快
2️⃣ 判断空看指针
3️⃣ 插入三步走
4️⃣ 删除要顺序
5️⃣ 质数看6k±1
6️⃣ gcd不能漏1
7️⃣ 线性筛最快
8️⃣ 质数分解唯一


需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询