-
LeetCode和OJ-Learn-Algorithms是学习算法的平台
资源介绍
leetcode
和
oj
算法虐我千百遍,我待算法如初恋
这里的内容是我学习算法过程的一些记录,希望能一直坚持下去。
学习方法
把所有经典算法写一遍
看算法有关源码
加入算法学习社区,相互鼓励学习
看经典书籍
刷题
基本数据结构和算法
这些算法全部自己敲一遍:
链表
链表
双向链表
哈希表/散列表
(Hash
Table)
散列函数
碰撞解决
字符串算法
排序
查找
BF算法
KMP算法
BM算法
正则表达式
数据压缩
二叉树
二叉树
二叉查找树
伸展树(splay
tree
分裂树)
平衡二叉树AVL
红黑树
B树,B+,B*
R树
Trie树(前缀树)
后缀树
最优二叉树(赫夫曼树)
二叉堆
(大根堆,小根堆)
二项树
二项堆
斐波那契堆(Fibonacci
Heap)
图的算法
图的存储结构和基本操作(建立,遍历,删除节点,添加节点)
最小生成树
拓扑排序
关键路径
最短路径:
Floyd,Dijkstra,bellman-ford,spfa
排序算法
交换排序算法
冒泡排序
插入排序
选择排序
希尔排序
快排
归并排序
堆排序
线性排序算法
桶排序
查找算法
顺序表查找:顺序