读别人的代码

10 分钟

自己写出答案只是第一步,去看看别人怎么写,常会发现自己绕了远路——别人一个 STL 就顶掉你二十行手写代码。

比如统计每个数出现几次,新手爱手写查找,其实一个 map 就够:

#include <map>
map<int, int> cnt;
for (int i = 0; i < n; i++) cnt[a[i]]++;   // 自动计数
for (auto &p : cnt)                          // 按键从小到大遍历
    cout << p.first << " " << p.second << "\n";

读别人代码时重点看三样:他的变量名、他怎么拆函数、他用了哪个库函数。看懂一个更短更清楚的写法,常常胜过自己闷头再做十道题,是最快的进步途径之一。

小纸条

找一道做过的题,看看有没有更简洁的解法。

登录 后可看答案

读别人的代码 · 考级冲刺 · op599 课程