空数组减一有多大

运行下面这段程序: #include <algorithm> #include <iostream> #include <map> #include <string> #include <

开始练习 →

换成 int 再减一

运行下面这段程序: #include <algorithm> #include <iostream> #include <map> #include <string> #include <

开始练习 →

从右往左找最后一次出现

补全 last_index_of:用 int 下标从右往左找 x 最后一次出现的位置,找不到返回 -1。输出找 17 和找 99 的结果,用 / 连起来。 (本题用 g++ -std=c++17 -O0 编译。)

开始练习 →

空数组也不能出事

补全 has_pair:对撞双指针判断有序数组里有没有两个数加起来等于 target。空数组和 13 15 17 23 24(目标 40)各判一次,用 / 连起来输出。 (本题用 g++ -std=c++17 -O0 编译。)

开始练习 →

数一数上升的相邻对

补全 count_up:数有多少个 i 满足 a[i+1] > a[i]。循环条件写成 i + 1 < a.size(),别写 i < a.size() - 1。输出 13 15 17 23 24 和空数组的结果,用 /

开始练习 →

空数组也能反转

补全 rev_safe:用 int 下标对撞反转。输出 13 15 17 23 24 反转后的结果,再用 | 接上空数组反转后的长度。 (本题用 g++ -std=c++17 -O0 编译。)

开始练习 →

长度和负数比较

补全 longer_than:判断数组长度是不是大于 k(k 可能是负数)。输出 (13 15 17 23 24, 3) 和 (空数组, -1) 的结果,用 / 连起来。起始代码直接拿 a.size() 和 k 比,会出错——亲眼看看,再改

开始练习 →

快慢指针怎么走

第 1 步:两个都从下标 0 出发 第 2 步:slow 走 1 格,fast 走 2 格 第 3 步:再来一轮:fast 到头了 第 4 步:此时 slow 停在正中间 13 15 17 23 24 slow fast 快慢指针的走法是【

开始练习 →

找中点的原理(C++)

快慢指针能找到中点,因为【0】。

开始练习 →

判环的原理(C++)

快慢指针能判断有没有环,因为【0】。

开始练习 →