常见数据结构和常见算法

1、常见数据结构

线性:数组,链表,队列,堆栈,块状数组(数组+链表),hash表,双端队列位图(bitmap)

树:堆(大顶堆、小顶堆)trie树(字母树or字典树),后缀树,后缀树组,二叉排序/查找树,B+/B-,AVL树Treap红黑树splay树线段树树状数组

图:图

其它:并查集

2、常见算法

(1)       基本思想:枚举,递归,分治,模拟,贪心,动态规划,剪枝,回溯

(2)       图算法:深度优先遍历与广度优先遍历, 最短路径,最小生成树,拓扑排序

(3)       字符串算法:字符串查找,hash算法,KMP算法

(4)       排序算法:冒泡,插入,选择,快排,归并排序,堆排序,桶排序

(5)       动态规划:背包问题,最长公共子序列,最优二分检索树

(6)       数论问题:素数问题,整数问题,进制转换,同余模运算,

(7)       排列组合:排列和组合算法

(8)       其它:LCA与RMQ问题

不断添加中……

阅读更多
上一篇树状数组
下一篇//线段树模板
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭