zoukankan      html  css  js  c++  java
  • 数据结构与算法系列之总篇

    〇、前言

    不知何时起,江湖上出现了一个门派,名曰“计算机技术”。其以功法多样、内功高深以及有教无类而闻名江湖。各路侠客,闻名而至。然,多数人只热衷于功法,而畏怯其内功难度,避而不修。殊不知,功法和内功乃相辅相成。。。

    一、为何学

    1. 更好地使用Java类库,Java类库封装了大量的数据结构和算法,并做了优化。学习数据结构与算法可以更好地理解Java类库,进而能从中学习并更好地使用。比如,什么情况下用ArrayList好,什么情况下用LinkedList好。又比如,要用一个类,需要注意什么等等。
    2. 写出高效的代码,比如,同样根据RPC的原理,写出的RPC框架,为什么有的人写出来自己都不想用,而有的人写出来,开源给千千万万的人用,甚至被Apache收录。
    3. 更好地阅读开源框架的源码,以便更深地理解其原理和设计。引用一句话:内行看门道,外行看热闹。

    二、怎么学

    1. 打蛇打七寸,抓住常用的;
    2. 学透彻,举一反三,深入理解;
    3. 使用场景,注意事项,学来就是用的;
    4. 边学边练,刷必要的题,如LeetCode上的;
    5. 创建一个GitHub工程,随时记录常用的数据结构和算法,逐渐沉淀;

    某个算法很难理解时,借助一个简单的例子,去理思路是个很好的办法。

    三、内容大纲

    上面配图是用ProcessOn所画,点击图片可访问原文件,如果喜欢,请点个赞。

    1、数据结构

    1. 数据结构与算法系列之数据结构:数组
    2. 数据结构与算法系列之数据结构:链表
    3. 数据结构与算法系列之数据结构:栈
    4. 数据结构与算法系列之数据结构:队列
    5. 数据结构与算法系列之数据结构:哈希表
    6. 数据结构与算法系列之数据结构:树
    7. 数据结构与算法系列之数据结构:堆
    8. 数据结构与算法系列之数据结构:图
    9. 数据结构与算法系列之数据结构:跳表
    10. 数据结构与算法系列之数据结构:位图
    11. 数据结构与算法系列之数据结构:字符串

    2、算法思想

    1. 数据结构与算法系列之算法思想:分治算法
    2. 数据结构与算法系列之算法思想:贪心算法
    3. 数据结构与算法系列之算法思想:动态规划
    4. 数据结构与算法系列之算法思想:回溯算法
    5. 数据结构与算法系列之算法思想:枚举算法
    6. 数据结构与算法系列之算法思想:摊还分析

    3、常用算法

    1. 数据结构与算法系列之常用算法:排序算法
    2. 数据结构与算法系列之常用算法:查找算法
    3. 数据结构与算法系列之常用算法:搜索算法
    4. 数据结构与算法系列之常用算法:字符串匹配算法
    5. 数据结构与算法系列之常用算法:LRU算法和LFU算法
    6. 数据结构与算法系列之常用算法:负载均衡算法
    7. 数据结构与算法系列之常用算法:一致性哈希算法
    8. 数据结构与算法系列之常用算法:Snowflake算法
    9. 数据结构与算法系列之常用算法:蓄水池抽样算法

    四、总结

    如果想在技术这条路上走的更远,数据结构与算法是必须迈过的门槛。

  • 相关阅读:
    bch算法生成nand flash中512byte校验和
    CFileDialog用法总结
    c++修改打印机名称
    c++连接打印机(转载)
    转发:for /f命令之—Delims和Tokens用法&总结
    c++中DLL文件的编写与实现——三步走
    GhostScript说明
    打印机API
    c++中DLL文件的编写与实现——三步走(2)
    windows程序设计基础知识
  • 原文地址:https://www.cnblogs.com/littlecharacter/p/11854524.html
Copyright © 2011-2022 走看看