• 程序员必须知道的10个算法和数据结构有哪些?


    算法

    1. 图搜索 (广度优先、深度优先)深度优先特别重要
    2. 排序
    3. 动态规划
    4. 匹配算法和网络流算法
    5. 正则表达式和字符串匹配

    数据结构

    1. 图 (树尤其重要)
    2. Map
    3. 栈/队列
    4. Tries | 字典树

    额外推荐

    • 贪婪算法
    • 概率方法
    • 近似算法

    算法:

    • 三路划分-快速排序
    • 合并排序(更具扩展性,复杂度类似快速排序)
    • DF/BF 搜索 (要知道使用场景)
    • Prim  / Kruskal (最小生成树)
    • Dijkstra (最短路径算法)
    • 选择算法

    数据结构

    • HashMap (真的要知道所有哈希结构)
    • 图和树(红黑树很好学) (red-black trees are good to learn)
    • 堆(优先级队列)
    • 栈/队列(必须知道的基础内容)
    • Tries | 字典树
  • 相关阅读:
    Python3 模块
    python os 方法
    python第三方模块的导入
    深拷贝和浅拷贝的区别
    win10专业版激活方法
    Python3 JSON
    python函数
    去重 方法
    VUE-地区选择器(V-Distpicker)组件使用
    ajax
  • 原文地址:https://www.cnblogs.com/suncj/p/4434129.html
Copyright © 2020-2023  润新知