在面试前一周,我刷了很多道算法,分类刷,有些是做过的,因为我是面试C++相关岗位,除了leetcode与剑指offer相关的算法,还需要手撕一些智能指针呀,单例模式呀、字符串呀、LRU、排序算法等等。
本节主要是以速训练算法及review基础为目的,内含60+道算法,代码量及涉及算法统计如下:
language | files | code | comment | blank | total |
---|---|---|---|---|---|
C++ | 49 | 4,146 | 633 | 353 | 5,132 |
path | files | code | comment | blank | total |
---|---|---|---|---|---|
. | 49 | 4,146 | 633 | 353 | 5,132 |
bfs_dfs | 6 | 695 | 92 | 57 | 844 |
dp | 12 | 533 | 134 | 54 | 721 |
dp/rob | 1 | 30 | 8 | 4 | 42 |
dp/剪绳子 | 1 | 30 | 10 | 1 | 41 |
dp/博弈论 | 1 | 61 | 22 | 5 | 88 |
dp/戳气球 | 1 | 21 | 9 | 2 | 32 |
dp/接雨水 | 1 | 153 | 13 | 14 | 180 |
dp/最大编辑距离 | 1 | 60 | 10 | 6 | 76 |
dp/背包 | 5 | 151 | 53 | 21 | 225 |
dp/贪心 | 1 | 27 | 9 | 1 | 37 |
hash | 1 | 135 | 17 | 14 | 166 |
link | 7 | 196 | 108 | 19 | 323 |
recursion_backtracke | 1 | 40 | 8 | 3 | 51 |
sliding_window | 2 | 69 | 17 | 6 | 92 |
slidingwindow | 1 | 230 | 19 | 15 | 264 |
sort | 2 | 165 | 20 | 12 | 197 |
stack | 1 | 67 | 9 | 3 | 79 |
sum问题 | 2 | 287 | 27 | 20 | 334 |
tree | 3 | 864 | 80 | 62 | 1,006 |
二分 | 1 | 116 | 13 | 9 | 138 |
手撕算法 | 10 | 749 | 89 | 79 | 917 |
手撕算法/heap | 4 | 277 | 40 | 39 | 356 |
手撕算法/kmp | 1 | 46 | 18 | 4 | 68 |
手撕算法/lru | 1 | 137 | 1 | 8 | 146 |
手撕算法/string | 1 | 106 | 8 | 8 | 122 |
手撕算法/单例模式 | 2 | 60 | 14 | 9 | 83 |
手撕算法/智能指针 | 1 | 123 | 8 | 11 | 142 |
可以看到上述总共5k行代码,相信两周左右的时间是可以review完毕的!
具体涉及算法如下: