V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
Austin2035
V2EX  ›  分享创造

彦祖们,我写了一套图文并茂的数据结构笔记(C 语言)

  •  
  •   Austin2035 · 2021-11-16 11:17:56 +08:00 · 3984 次点击
    这是一个创建于 1137 天前的主题,其中的信息可能已经有所发展或是发生改变。

    数据结构(C 语言) ,图文并茂,持续更新

    https://github.com/LookCos/learn-data-structures

    为什么写此笔记?

    数据结构的重要性不必多说,大多数人初次学习数据结构应该是在大学期间。很多高校学完 C 语言就立刻转向了数据结构学习,在很多同学对 C 语言语法,比如对结构体、指针等理解尚浅和某些教材不说人话的情况下学习。所以,原本很简单的内容,可能会难以理解消化,甚至教材会将其进行复杂化描述。为了巩固自己学习,同时与大家交流,我一边学习一边记录。 本笔记有很多代码设计思路来自教科书级别 C 语言开源项目 redis 。

    后面还有挺多要更新的,跳表、红黑树、B+-树等。

    我只是初学者,希望各位大佬多多批评指正。

    第 1 条附言  ·  2021-11-16 16:20:13 +08:00
    32 条回复    2021-11-19 22:07:02 +08:00
    Austin2035
        1
    Austin2035  
    OP
       2021-11-16 11:31:25 +08:00
    @Livid 可以帮忙移动到程序员区吗,感觉发错地点了。😂
    nigulasida
        2
    nigulasida  
       2021-11-16 11:38:46 +08:00
    完美
    Austin2035
        3
    Austin2035  
    OP
       2021-11-16 11:43:40 +08:00
    @nigulasida 感谢彦祖支持
    ris
        4
    ris  
       2021-11-16 11:49:30 +08:00
    @lookcos 程序员区没有彦祖
    lscexpress
        5
    lscexpress  
       2021-11-16 11:51:08 +08:00
    @ris 或者说,程序员区个个都是彦祖
    Austin2035
        6
    Austin2035  
    OP
       2021-11-16 11:58:50 +08:00
    @lscexpress 哈哈哈 😂
    @ris
    shilianmlxg
        7
    shilianmlxg  
       2021-11-16 13:44:26 +08:00 via iPhone
    谢谢大佬。可以多学亿点点。但是只会 js 看起来还是有点吃力。《是我的问题了》
    meiyoumingzi6
        8
    meiyoumingzi6  
       2021-11-16 14:02:31 +08:00
    马克一下, 后头看看
    rongchuan
        9
    rongchuan  
       2021-11-16 14:19:22 +08:00
    为啥 1 ,2 ,3 之后直接就是 11 了...
    还有,别用 c 语言刷题,用 c++
    Buges
        10
    Buges  
       2021-11-16 14:26:01 +08:00 via Android
    @rongchuan 有道理,用 unsafe rust 也不错。
    IsmeOvo
        11
    IsmeOvo  
       2021-11-16 15:09:39 +08:00 via Android
    正好需要学习 😃
    wellsc
        12
    wellsc  
       2021-11-16 15:14:32 +08:00
    @rongchuan 何出此言,展开讲讲
    kylix
        13
    kylix  
       2021-11-16 15:17:23 +08:00
    👍,进收藏夹!然后吃灰...😂
    commoccoom
        14
    commoccoom  
       2021-11-16 15:21:50 +08:00
    收藏了,老哥
    Austin2035
        15
    Austin2035  
    OP
       2021-11-16 15:24:03 +08:00
    @rongchuan 前面的是 01 、02 、03 ,开头都是 0 ,后面的 11 、12 、13 ,开头都是 1 ,开头不一样,表示不同部分,0 开头的是基础,1 开头的是正文
    Austin2035
        16
    Austin2035  
    OP
       2021-11-16 15:26:57 +08:00
    @commoccoom
    @kylix
    @IsmeOvo
    @meiyoumingzi6
    @shilianmlxg
    可以参考 Redis 源码和《 Redis 设计与实现》这本书(在线就能看)。
    看看 Redis 的数据结构,学习数据结构的同时,也了解了 Redis 。
    Redis 源码据说是教科书级别,我研究了一些,发现确实好懂(至少,内部数据结构是)。
    rongchuan
        17
    rongchuan  
       2021-11-16 15:28:56 +08:00
    @wellsc 竞赛、刷题用 c++不是共识吗...用 c 刷题怕是要写吐掉
    rongchuan
        18
    rongchuan  
       2021-11-16 15:31:10 +08:00
    @lookcos 好吧,原来是这样...不过这样不如用书的命名法,1.1 、1.2 、1.2.1 ,2.1 、2.2
    Austin2035
        19
    Austin2035  
    OP
       2021-11-16 15:35:39 +08:00
    @rongchuan 有道理,好懂的就是好的,采纳
    LinkinLaw
        20
    LinkinLaw  
       2021-11-16 15:36:58 +08:00
    正好要学,谢谢大佬
    commoccoom
        21
    commoccoom  
       2021-11-16 15:37:29 +08:00
    @lookcos 淘宝二手书走起,买一本看看。
    Austin2035
        22
    Austin2035  
    OP
       2021-11-16 15:43:10 +08:00
    @commoccoom http://redisbook.com/ ,第一部分在线看,就可以,不过想深入研究 redis 且有经济实力,可以支持一波作者。
    Austin2035
        23
    Austin2035  
    OP
       2021-11-16 15:44:21 +08:00
    @LinkinLaw 感谢支持,共同进步
    zxCoder
        24
    zxCoder  
       2021-11-16 18:17:13 +08:00 via Android
    bug123
        25
    bug123  
       2021-11-16 20:24:19 +08:00
    不错不错。建议楼主的代码用 clang-format 格式化一下,也可以使用在线的代码格式化工具:formatter.org
    Austin2035
        26
    Austin2035  
    OP
       2021-11-16 21:01:44 +08:00
    @bug123 谢谢你的建议,我得空试试。
    wodong
        27
    wodong  
       2021-11-16 21:09:12 +08:00
    给力
    Austin2035
        28
    Austin2035  
    OP
       2021-11-16 22:38:01 +08:00
    @wodong 必须的,谢谢支持
    Helsing
        29
    Helsing  
       2021-11-16 23:14:48 +08:00 via iPhone
    支持
    haojidemingzi
        30
    haojidemingzi  
       2021-11-16 23:42:08 +08:00 via Android
    @rongchuan 那用 java 刷题呢?
    rongchuan
        31
    rongchuan  
       2021-11-17 10:49:27 +08:00
    @haojidemingzi 面试用啥语言都行,竞赛一般都是 c++。即使不用 C++,也得知道基础语法,很多好的题解都是用 C++写的
    justin2018
        32
    justin2018  
       2021-11-19 22:07:02 +08:00   ❤️ 1
    [强烈推荐] 深入浅出数据结构 - 顶尖程序员图文讲解 - UP 主翻译校对 (已完结)_哔哩哔哩_bilibili
    https://www.bilibili.com/video/BV1Fv4y1f7T1
    这个教程 不错
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2687 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 11:47 · PVG 19:47 · LAX 03:47 · JFK 06:47
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.