数出集合版的比较次数

补全 set_ops:改用集合判重,每条只算一次。同样算 100 条。 (本题用 g++ -std=c++17 -O0 编译。)

开始练习 →

出一份对比数据

补全 report:返回一份对比结果,格式是「数组版次数/集合版次数/倍数」(用 / 隔开,倍数用整除)。算 100 条的情况。 (本题用 g++ -std=c++17 -O0 编译。)

开始练习 →

给代码计时该用哪个时钟

C++ 里给一段代码计时,最该用的时钟是【0】。

开始练习 →

为什么要取中位数

第 1 步:同一段代码测 5 次 第 2 步:有一次被别的程序拖慢了 第 3 步:排序中…… 第 4 步:排序中…… 第 5 步:排序中…… 第 6 步:排序中…… 第 7 步:排好后取正中间那个 12 9 30 11 10 同一段代码测了

开始练习 →

-O2 为什么通常更快

同一份代码用 -O2 编出来的程序通常比 -O0 快,是因为【0】。

开始练习 →

1500 毫秒换算成秒

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

开始练习 →

两段时长加起来

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

开始练习 →

取几次计时的中位数

补全 median:把几次计时(毫秒)排好序,返回正中间那个(次数是奇数)。输出 {12, 9, 30, 11, 10} 的中位数。 (本题用 g++ -std=c++17 -O0 编译。)

开始练习 →

纳秒换算成毫秒

补全 to_ms:计时拿到的是纳秒数,用 duration_cast 换算成毫秒(零头截掉)。输出 1234567 纳秒是几毫秒。 (本题用 g++ -std=c++17 -O0 编译。)

开始练习 →

C++ 版也数操作次数

C++ 快得多,可复杂度不会因此改变。补全 ratio_of,输出 1000 条数据时数组判重和集合判重的操作次数之比(整除)。 (本题用 g++ -std=c++17 -O0 编译。)

开始练习 →