hello-interview
hello-interview copied to clipboard
One algorithmic problem every day,Get rid of Rookies。/ 100 天摆脱算法小白
Algorithm - 100天摆脱算法小白
作者:小浩
说明:我曾发起一个项目 hello-algorithm,从上线到获得 8k star 只用了不到半个月的时间,且登上过 github trending 日榜榜首的位置。但是该项目在我看来却有一定局限性,由于资源性质过重,并不能让大家真正参与进来。同时,也没有系统的给出一套完整的算法训练步骤。在这样的背景下,我重新创建了现在这个项目:Algorithm-100-Days,期望可以提供一套完整的算法训练,并对每一节学习内容都提供了视频。
同时该项目也会尽可能的提供算法相关学习资料,包括但不限于:国内外优质算法算法视频(Youtube、Bilibili)、算法相关书籍下载(百度云)、算法面试题目汇总(leetcode、flag、bat)、算法题目源码解析(我会尽可能组织更多的人来提供代码以及代码分析)
最后:所有对该项目有兴趣的人,都可以参与进来,你的任何行为都可以使你成为 contributor。哪怕只是提供一个学习链接!
如何进行学习?
1、通过阅读文档,进行基础知识的学习。
2、通过文档下方的视频链接,进行内容巩固。
3、通过代码,进行提升。
如何运行代码:
第一步:安装依赖文件
npm install
第二步:测试单一文件
npm test -- 'LinkedList'
第三步:测试全部
npm test
提示
数据结构和算法的学习主要在于思想的掌握,并不需要纠结语言层面的东西。
难度 A:基础 B:进阶
| 学习目录 | 难度 | 描述 |
|---|---|---|
| 01.数据结构和算法的重要性 | A | |
| 02.链表 | A | |
| 03.双向链表 | A | |
| 04.队列 | A | |
| 05.栈 | A | |
| 06.哈希表 | A | |
| 07.堆 | A | |
| 08.优先队列 | B | |
| 09.字典树 | B | |
| 10.树 | A | |
| 11.二叉搜索树 | A | |
| 12.AVL树 | B | |
| 13.红黑树 | B | |
| 14.树状数组 | B | |
| 15.图 | A | |
| 16.并查集 | B | |
| 17.布隆过滤器 | B | |
| 18.笛卡尔积 | ||
| 19.洗牌算法 | ||
| 20.子集 | ||
| 21.排列 | ||
| 22.组合 | ||
| 23.最长公共子序列 | ||
| 24.最长递增子序列 | ||
| 25.最短公共父序列 | ||
| 26.背包问题 | ||
| 27.最大子数列问题 | ||
| 28.组合求和 | ||
| 29.汉明距离 | ||
| 30.莱温斯坦距离 | ||
| 31.KMP | ||
| 32.Sun./Day | ||
| 33.字符串快速查找 | ||
| 34.Rabin Karp 算法 | ||
| 35.最长公共子串 | ||
| 36.正则表达式匹配 | ||
| 37.线性搜索 | ||
| 38.跳转搜索 | ||
| 39.二分查找 | ||
| 40.插值搜索 | ||
| 41.冒泡排序 | ||
| 42.选择排序 | ||
| 43.插入排序 | ||
| 44.堆排序 | ||
| 45.归并排序 | ||
| 46.快速排序 | ||
| 47.希尔排序 | ||
| 48.计数排序 | ||
| 49.基数排序 | ||
| 50.链表遍历 | ||
| 51.链表反转 | ||
| 52.树的深搜 | ||
| 53.树的广搜 | ||
| 54.图的深搜 | ||
| 55.图的广搜 | ||
| 56.寻找加权无向图的最小生成树 | ||
| 57.找到图中所有顶点的最短路径 | ||
| 58.找到所有顶点对之间的最短路径 | ||
| 59.判圈算法 | ||
| 60.寻找加权无向图的最小生成树 | ||
| 61.拓扑排序 | ||
| 62.Tarjan算法 | ||
| 63.Fleury算法 | ||
| 64.哈密顿图 | ||
| 65.旅行推销员问题 | ||
| 70.欧几里得算法 | ||
| 71.最小公倍数 | ||
| 72.素数筛 | ||
| 73.判断2次方数 | ||
| 74.杨辉三角形 | ||
| 75.复数 | ||
| 76.弧度和角 | ||
| 77.位操作 | ||
| 78.阶乘 | ||
| 79.斐波那契数 | ||
| 80.素数检测 | ||
| 81.LRU算法 | ||
| 82.八皇后问题 | ||
| 83.骑士巡逻 | ||
| 84.递归楼梯 | ||
| 85.旋转矩阵 | ||
| 86.跳跃游戏 | ||
| 87.雨水收集 | ||
| 88.汉诺塔 | ||
| 89.递推DP | ||
| 90.背包九讲 | ||
| 91.LIS | ||
| 92.LCS | ||
| 93.区间DP | ||
| 94.树形DP | ||
| 95.数位DP | ||
| 96.概率DP | ||
| 97.状压DP | ||
| 98.结构DP | ||
| 99.DP总结 | ||
| 100.毕业证书 |