准备Swift编码面试— [索引]算法和数据结构

  1. 大O和7步思维
    1. 1.大O
    1. 2. 7步思考
  2. 基于列表的集合
    2. 1.数组
    2. 2.链表
    2. 3.堆叠
    2. 4.队列/出队
    2. 5.优先队列
  3. 树木1
    3. 1.堆
    3. 2.最大堆/最小堆
    3. 3.细分树
    3. 4.二叉索引树
    3. 5.红黑树
    3. 6.挖掘
    3. 7.二进制搜索树
  4. 数学1
    4. 1.排列
    4. 2.组合
    4. 3.素数
    4. 4.鹰嘴豆科Seula
    4. 5. GCD欧几里得算法
  5. 递归
  6. 排序
    6. 1.气泡排序
    6. 2.插入排序
    6. 3.选择排序
    6. 4.快速排序
    6. 5.合并排序
    6. 6.堆排序
    6. 7.基数排序
  7. 正在搜寻
    7. 1.回溯
    7. 2.蛮力
    7. 3.跳转搜索
    7. 4.线性搜索
    7. 5.电源设置
    7. 6.优化问题
  8. 分而治之
    8.1。 二元搜寻
  9. 贪婪算法
  10. 位掩码

  11. 11. 1.回文
    11. 2. Manacher算法
    11. 3.特里
    11. 4.后缀树
  12. 地图
  13. 不相交集(联合/查找)
  14. 最小生成树(MST)
    14. 1. Kruskal算法
    14. 2. Prim的算法
  15. 最短的路径
    15. 1. Dijkstra算法(O(n²))
    15. 2. Bellman-Ford算法
    15. 3. Flyod-Warshall算法(O(n³))
    15. 4.最短路径更快算法
  16. 图1
    16. 1.图建模
    16. 2.拓扑排序
    –정점의이용한정렬(O(n³))
    – DFS를이용한정렬(O(n²))
  17. 数学2
    17. 1.二项式系数
    17. 2.帕斯卡三角形
    17. 3.加泰罗尼亚语编号
    17. 4.欧拉的phi函数
    17. 5.费马小定理
    17. 6.高斯消除
    17. 8.模块化算术
    17. 9.离散数学
    17. 10.鸽子洞原理
    17. 11.第二类斯特林数
  18. 树2
    18. 1.最低共同祖先
    (使用预购DFS和细分树/使用稀疏表)
  19. 图2
    19. 1.最大流量
    19. 2.福特-富克森
    19. 3.埃德蒙·卡普
    19. 4. Dinic的算法
    19. 5.最小切割最大流量
    19. 6.最低成本最大流量
    (使用SPFA的Bellman-Ford算法/匈牙利方法)
    19. 7.双向匹配(Hopcroft-Karp算法)
  20. 散列
  21. 复杂
  22. 霍夫曼编码
  23. 动态编程
    23. 1. 0–1背包问题
    23. 2. LCS,LIS
    23. 3.子集
    23. 4. DP优化
    23. 5. Knuth优化
    23. 6.分治优化
    23. 7.凸包优化
  24. 几何算法