数据结构与算法总论

来源:互联网 发布:软件开发资质认证 编辑:程序博客网 时间:2024/05/10 05:00

常见数据结构:

                     线性:数组,链表,队列,堆栈,块状数组(数组+链表),hash表,双端队列,位图(bitmap)
                 树:堆(大顶堆、小顶堆),trie树(字母树or字典树),后缀树,后缀树组,二叉(排序/查找)树,B+/B-树,Treap,红黑树,splay树,线段树,树状数组
                图:图
               其他:并查集

常见算法:

      (1)基本思想:枚举,递归,分治,模拟,贪心,动态规划,剪枝,回溯
      (2)图算法:深度优先遍历与广度优先遍历,最短路径,最小生成树,拓扑排序,shuffle算法,蓄水池抽样,图的割点,最大二分图匹配、最近点对、SG函数
     (3)字符串算法:字符串查找,hash算法,KMP算法
    (4)排序算法:冒泡,插入,选择,快排,归并排序,堆排序,桶排序,希尔排序
    (5)动态规划:背包问题,最长公共子序列,最优二分检索树
    (6)数论问题:素数问题,整数问题,进制转换,同余模运算
    (7)排序组合:排列和组合算法,非递归求全排列
    (8)其他:LCA和RMQ问题
原创粉丝点击