-
第 15 题
答案:B
· 选择题 · GESP 五级样题(C++ 组)
这题考链表基础概念辨析,尤其要分清单链表、双链表和循环链表的遍历能力。拿到题先别急着选,把四个选项对应到链表结构特性上:数组能模拟链表吗?头部插入真的O(1)吗?循环链表到底能不能前后随便跳?双向链表是不是总能遍历全图?
看完整解析 →
-
第 15 题
答案:C
· 选择题 · GESP 202309 C++ 五级
拿到题先别急着看选项,把代码里的new和指针赋值像画图一样在脑子里连起来:第一个节点指向第二个,第二个指向第三个,而第三个的Next参数传回了第一个节点,这就形成了一个闭环,直接锁定循环链表。
看完整解析 →
-
第 19 题
答案:B
· 判断题 · GESP 202309 C++ 五级
拿到题先想:二分查找的核心操作是什么?它依赖数据结构的什么特性?链表能支持这个特性吗?
看完整解析 →
-
第 20 题
答案:A
· 判断题 · GESP 202309 C++ 五级
这题考的是链表指针的本质:C++ 里指针只是存地址,只要内存没被释放,让尾节点的 next 指向头节点就完全合法。别被‘循环引用’吓到,它不等于悬空或泄漏,直接选A。
看完整解析 →
-
第 5 题
答案:B
· 选择题 · GESP 202312 C++ 五级
这题考带头节点的双向链表插入。拿到题先别急着写代码,脑子里过一遍链表结构:头节点后面跟着数据节点。插入新节点 p 时,p 要插在头节点和原来的第一个数据节点之间。关键就是:原来的第一个节点(pHead next)到底存不…
看完整解析 →
-
第 12 题
答案:B
· 选择题 · GESP 202312 C++ 五级
这道题考的是链表类型判断,拿到代码先别急着看逻辑,直接看节点定义里有没有Prev和Next两个指针成员,有就是双向,没有就是单向。
看完整解析 →
-
第 25 题
答案:A
· 判断题 · GESP 202312 C++ 五级
这题考的是冒泡排序在链表上的时间复杂度。别被双向链表多一个指针带偏,冒泡核心就是两两比较交换,两种链表遍历次数都是n²,复杂度自然一样。
看完整解析 →
-
第 4 题
答案:B
· 选择题 · GESP 202403 C++ 五级
位运算:&(与)、 (或)、^(异或)、~(取反)、<<(左移)、 (右移)。异或性质:a^a=0,a^0=a。
看完整解析 →
-
第 15 题
答案:A
· 选择题 · GESP 202403 C++ 五级
图的存储方式:邻接矩阵(O(n²)空间,适合稠密图)、邻接表(O(n+m)空间,适合稀疏图)。
看完整解析 →
-
第 24 题
答案:A
· 判断题 · GESP 202403 C++ 五级
链表分为单向/双向/循环链表,插入删除O(1),但查找O(n)。注意指针操作的顺序,防止断链。
看完整解析 →
-
第 3 题
答案:B
· 选择题 · GESP 202406 C++ 五级
分析时间复杂度时关注循环层数和每层迭代次数,递归算法则分析递归树。注意最坏/最好/平均情况的区别。
看完整解析 →
-
第 4 题
答案:C
· 选择题 · GESP 202406 C++ 五级
根据上下文和C++语法规则确定空缺处应填的内容,关注函数调用参数、表达式和返回值类型。
看完整解析 →
-
第 16 题
答案:A
· 判断题 · GESP 202406 C++ 五级
函数指针:bool ( Fx)(int) 声明一个指向"接收int返回bool"的函数的指针,可作为参数传递给其他函数(回调机制)。
看完整解析 →
-
第 18 题
答案:A
· 判断题 · GESP 202406 C++ 五级
链表分为单向/双向/循环链表,插入删除O(1),但查找O(n)。注意指针操作的顺序,防止断链。
看完整解析 →
-
第 1 题
答案:C
· 选择题 · GESP 202409 C++ 五级
分析时间复杂度时关注循环层数和每层迭代次数,递归算法则分析递归树。注意最坏/最好/平均情况的区别。
看完整解析 →
-
第 2 题
答案:D
· 选择题 · GESP 202409 C++ 五级
图的存储方式:邻接矩阵(O(n²)空间,适合稠密图)、邻接表(O(n+m)空间,适合稀疏图)。
看完整解析 →
-
第 16 题
答案:A
· 判断题 · GESP 202409 C++ 五级
图的存储方式:邻接矩阵(O(n²)空间,适合稠密图)、邻接表(O(n+m)空间,适合稀疏图)。
看完整解析 →
-
第 2 题
答案:C
· 选择题 · GESP 202412 C++ 五级
函数指针:bool ( Fx)(int) 声明一个指向"接收int返回bool"的函数的指针,可作为参数传递给其他函数(回调机制)。
看完整解析 →
-
第 3 题
答案:A
· 选择题 · GESP 202412 C++ 五级
根据上下文和C++语法规则确定空缺处应填的内容,关注函数调用参数、表达式和返回值类型。
看完整解析 →
-
第 16 题
答案:B
· 判断题 · GESP 202412 C++ 五级
链表分为单向/双向/循环链表,插入删除O(1),但查找O(n)。注意指针操作的顺序,防止断链。
看完整解析 →
-
第 23 题
答案:A
· 判断题 · GESP 202412 C++ 五级
链表不支持随机访问,不能进行二分查找。二分查找要求数据结构支持O(1)的随机访问(如数组)。
看完整解析 →
-
第 1 题
答案:A
· 选择题 · GESP 202503 C++ 五级
链表分为单向/双向/循环链表,插入删除O(1),但查找O(n)。注意指针操作的顺序,防止断链。
看完整解析 →
-
第 2 题
答案:A
· 选择题 · GESP 202503 C++ 五级
函数指针:bool ( Fx)(int) 声明一个指向"接收int返回bool"的函数的指针,可作为参数传递给其他函数(回调机制)。
看完整解析 →
-
第 3 题
答案:B
· 选择题 · GESP 202503 C++ 五级
根据上下文和C++语法规则确定空缺处应填的内容,关注函数调用参数、表达式和返回值类型。
看完整解析 →
-
第 16 题
答案:A
· 判断题 · GESP 202503 C++ 五级
链表分为单向/双向/循环链表,插入删除O(1),但查找O(n)。注意指针操作的顺序,防止断链。
看完整解析 →
-
第 17 题
答案:B
· 判断题 · GESP 202503 C++ 五级
函数指针:bool ( Fx)(int) 声明一个指向"接收int返回bool"的函数的指针,可作为参数传递给其他函数(回调机制)。
看完整解析 →
-
第 1 题
答案:C
· 选择题 · GESP 202506 C++ 五级
分析时间复杂度时关注循环层数和每层迭代次数,递归算法则分析递归树。注意最坏/最好/平均情况的区别。
看完整解析 →
-
第 2 题
答案:C
· 选择题 · GESP 202506 C++ 五级
根据上下文和C++语法规则确定空缺处应填的内容,关注函数调用参数、表达式和返回值类型。
看完整解析 →
-
第 3 题
答案:D
· 选择题 · GESP 202506 C++ 五级
链表分为单向/双向/循环链表,插入删除O(1),但查找O(n)。注意指针操作的顺序,防止断链。
看完整解析 →
-
第 4 题
答案:A
· 选择题 · GESP 202506 C++ 五级
根据上下文和C++语法规则确定空缺处应填的内容,关注函数调用参数、表达式和返回值类型。
看完整解析 →
-
第 1 题
答案:B
· 选择题 · GESP 202509 C++ 五级
仔细审题,明确已知条件和所求目标,运用相关知识点逐项分析。
看完整解析 →
-
第 2 题
答案:C
· 选择题 · GESP 202509 C++ 五级
根据上下文和C++语法规则确定空缺处应填的内容,关注函数调用参数、表达式和返回值类型。
看完整解析 →
-
第 3 题
答案:A
· 选择题 · GESP 202509 C++ 五级
根据上下文和C++语法规则确定空缺处应填的内容,关注函数调用参数、表达式和返回值类型。
看完整解析 →
-
第 1 题
答案:C
· 选择题 · GESP 202512 C++ 五级
根据上下文和C++语法规则确定空缺处应填的内容,关注函数调用参数、表达式和返回值类型。
看完整解析 →
-
第 2 题
答案:B
· 选择题 · GESP 202512 C++ 五级
根据上下文和C++语法规则确定空缺处应填的内容,关注函数调用参数、表达式和返回值类型。
看完整解析 →
-
第 3 题
答案:C
· 选择题 · GESP 202512 C++ 五级
分析时间复杂度时关注循环层数和每层迭代次数,递归算法则分析递归树。注意最坏/最好/平均情况的区别。
看完整解析 →
-
第 16 题
答案:B
· 判断题 · GESP 202512 C++ 五级
仔细审题,明确已知条件和所求目标,运用相关知识点逐项分析。
看完整解析 →
-
第 1 题
答案:D
· 选择题 · GESP 202603 C++ 五级
分析时间复杂度时关注循环层数和每层迭代次数,递归算法则分析递归树。注意最坏/最好/平均情况的区别。
看完整解析 →
-
第 2 题
答案:C
· 选择题 · GESP 202603 C++ 五级
函数指针:bool ( Fx)(int) 声明一个指向"接收int返回bool"的函数的指针,可作为参数传递给其他函数(回调机制)。
看完整解析 →
-
第 3 题
答案:B
· 选择题 · GESP 202603 C++ 五级
根据上下文和C++语法规则确定空缺处应填的内容,关注函数调用参数、表达式和返回值类型。
看完整解析 →
-
第 16 题
答案:A
· 判断题 · GESP 202603 C++ 五级
分析时间复杂度时关注循环层数和每层迭代次数,递归算法则分析递归树。注意最坏/最好/平均情况的区别。
看完整解析 →
-
第 1 题
答案:B
· 选择题 · GESP 202606 C++ 五级
根据上下文和C++语法规则确定空缺处应填的内容,关注函数调用参数、表达式和返回值类型。
看完整解析 →
-
第 2 题
答案:C
· 选择题 · GESP 202606 C++ 五级
根据上下文和C++语法规则确定空缺处应填的内容,关注函数调用参数、表达式和返回值类型。
看完整解析 →
-
第 3 题
答案:A
· 选择题 · GESP 202606 C++ 五级
仔细审题,明确已知条件和所求目标,运用相关知识点逐项分析。
看完整解析 →
-
第 16 题
答案:A
· 判断题 · GESP 202606 C++ 五级
仔细审题,明确已知条件和所求目标,运用相关知识点逐项分析。
看完整解析 →
-
第 17 题
答案:B
· 判断题 · GESP 202606 C++ 五级
图的存储方式:邻接矩阵(O(n²)空间,适合稠密图)、邻接表(O(n+m)空间,适合稀疏图)。
看完整解析 →
-
第 22 题
答案:B
· 判断题 · GESP 202606 C++ 五级
链表不支持随机访问,不能进行二分查找。二分查找要求数据结构支持O(1)的随机访问(如数组)。
看完整解析 →
-
第 1 题
答案:A
· 选择题 · GESP202609 C++ 五级
看到"尾插"和"已知 tail",立刻想到不需要遍历链表。关键观察是 tail 直接指向最后一个节点。插入新节点只需:分配内存、设置 next 为 nullptr、修改 tail next 为新节点、更新 tail 为新…
看完整解析 →
-
第 2 题
答案:C
· 选择题 · GESP202609 C++ 五级
删除中间结点核心是"先改邻居,再删自己"。看到题先定位 p 的左右邻居 p prev 和 p next,然后让左邻居的 next 跳过 p 指向右邻居,右邻居的 prev 跳过 p 指向左邻居,最后 delete p。关…
看完整解析 →
-
第 3 题
答案:B
· 选择题 · GESP202609 C++ 五级
快指针每次走两步,慢指针每次走一步,当快指针到达末尾时,慢指针恰好在中间。这是链表找中点的经典技巧,时间复杂度O(n),空间复杂度O(1)。看到题先想"快慢指针",然后检查循环条件是否保证快指针不会越界。
看完整解析 →
-
第 16 题
答案:A
· 判断题 · GESP202609 C++ 五级
这题考的是链表插入的基本操作。看到题先想指针重连的顺序:插入后 s 要指向原来 p 的下一个,p 要指向 s。关键观察是两条语句必须按特定顺序执行,否则会造成死循环或丢失链表。先 s next = p next 保存原后…
看完整解析 →
-
第 17 题
答案:B
· 判断题 · GESP202609 C++ 五级
看到题先想三件事:1)delete 后 p 是否还能用?2)head 更新时机是否安全?3)是否遗漏了临时指针保存后继?关键观察是代码顺序:p = head; delete p; head = p next; 这里 de…
看完整解析 →
-
第 24 题
答案:B
· 判断题 · GESP 六级样题(C++ 组)
这道题其实是在考你对数据结构底层特性的理解。拿到题别急着套公式,先问自己:二分查找最核心依赖的是什么?是随机访问。链表能随机访问吗?不能。所以它的平均复杂度肯定不是对数级,而是退化成线性了。
看完整解析 →
-
第 14 题
答案:B
· 选择题 · GESP 202309 C++ 六级
这道题考链表遍历的时间复杂度。找节点必须从头开始一个个看,平均要走一半,最坏走全部,都是和N成比例,所以是O(N)。
看完整解析 →
-
第 23 题
答案:B
· 判断题 · GESP 202309 C++ 六级
这题考的是数据结构实现的灵活性。拿到题先别急着背结论,盯着题干里的“只能”二字,想想链表的核心是什么?是节点间的指向关系。C/C++里实现这种关系,除了指针,数组下标也能模拟,这才是破题关键。
看完整解析 →
-
第 6 题
答案:B
· 选择题 · GESP 202312 C++ 六级
看到结构体里同时定义了 next 和 prev 两个指针,先别急着选,想想双向链表的核心特征就是能往两头走,再看初始化是不是把两头都封死了,这就定调了。
看完整解析 →
-
第 25 题
答案:A
· 判断题 · GESP 202312 C++ 六级
这题其实是在考你对‘排序复杂度’和‘链表遍历’关系的直觉。拿到题先想:冒泡排序到底在做什么?是两两比较并交换相邻元素,跟容器是数组还是链表没关系。再看链表:单链表从头走到尾要 n 步,双向链表虽然能往回走,但比较和交换相…
看完整解析 →
-
第 15 题
答案:A
· 选择题 · GESP 202403 C++ 六级
链表分为单向/双向/循环链表,插入删除O(1),但查找O(n)。注意指针操作的顺序,防止断链。
看完整解析 →
-
第 20 题
答案:B
· 判断题 · GESP 202403 C++ 六级
函数指针:bool ( Fx)(int) 声明一个指向"接收int返回bool"的函数的指针,可作为参数传递给其他函数(回调机制)。
看完整解析 →
-
第 21 题
答案:B
· 判断题 · GESP 202406 C++ 六级
分析时间复杂度时关注循环层数和每层迭代次数,递归算法则分析递归树。注意最坏/最好/平均情况的区别。
看完整解析 →
-
第 5 题
答案:B
· 选择题 · GESP 202412 C++ 六级
分析时间复杂度时关注循环层数和每层迭代次数,递归算法则分析递归树。注意最坏/最好/平均情况的区别。
看完整解析 →
-
第 18 题
答案:A
· 判断题 · GESP 202412 C++ 六级
链表分为单向/双向/循环链表,插入删除O(1),但查找O(n)。注意指针操作的顺序,防止断链。
看完整解析 →
-
第 25 题
答案:B
· 判断题 · GESP 202412 C++ 六级
链表分为单向/双向/循环链表,插入删除O(1),但查找O(n)。注意指针操作的顺序,防止断链。
看完整解析 →
-
第 25 题
答案:A
· 判断题 · GESP 202503 C++ 六级
分析时间复杂度时关注循环层数和每层迭代次数,递归算法则分析递归树。注意最坏/最好/平均情况的区别。
看完整解析 →
-
第 20 题
答案:B
· 判断题 · GESP 202506 C++ 六级
分析时间复杂度时关注循环层数和每层迭代次数,递归算法则分析递归树。注意最坏/最好/平均情况的区别。
看完整解析 →