V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Poluk
V2EX  ›  程序员

想问一下计算机组成原理和数据结构与算法的问题

  •  
  •   Poluk · 203 天前 · 1784 次点击
    这是一个创建于 203 天前的主题,其中的信息可能已经有所发展或是发生改变。

    各位佬 我是学软件的..然后想提升一下自己的“内功”,准备学计算机组成原理,正在纠结王道的和 B 站哈工大的课哪个更适合初学者...前段时间听了听王道的...但是感觉王道后面的特别难,有没有什么学习建议,还有就是书籍的推荐 还有就是目前 java 学习到了日期类...还打算学数据结构与算法 java 版本的 视频教程存了一套,书籍的话他们推荐黑皮系列的那个《数据结构与算法》 Weiss 的,这本能去啃嘛?

    26 条回复    2021-12-07 13:34:50 +08:00
    seers
        1
    seers  
       203 天前   ❤️ 1
    先从 CSAPP 开始吧,打好基础
    Poluk
        2
    Poluk  
    OP
       203 天前
    @seers csapp 不太能听懂啊....bili 上有
    tcp
        3
    tcp  
       203 天前
    这三门课想学好都得花功夫,数据结构相对简单点,教材就不推荐了,当初老师教的教材比你这些更烂…
    raaaaaar
        4
    raaaaaar  
       203 天前 via Android
    看你准备花的时间了,最好的方式就是直接找科班的教材来学,像科班上课那样
    raaaaaar
        5
    raaaaaar  
       203 天前 via Android
    至于教材,不用听别人说那本就一定死啃那本,如果你啃不懂,说明这书不适合现在的你,或者纯粹烂书,直接换,找到那种有点费力,但是又能读懂的最好。
    thinkershare
        6
    thinkershare  
       203 天前
    先学数据结构, 然后将最简单的常用的 20 种左右的排序写一遍, 查找写一遍, 遍历(树,图)写一遍, 然后计算机组成原理和算法入门可以并行, 不要用 Java, 尝试用 C 语言, 如果你的目的是学习原理和理解后面的计算机组成原理, 操作系统, 编译原理. 如果是学习计算机科学(注意是学习), 基础的分支, 循环就够了, 不要在意那些为工程而添加的语法结构. 等你要去做项目的时候, 在尝试去寻找对应语言的库的 API
    xiaowei0823
        7
    xiaowei0823  
       203 天前 via iPhone   ❤️ 1
    收藏从未停止 学习从未开始
    thinkershare
        8
    thinkershare  
       203 天前   ❤️ 1
    我尝试过使用 Java 和 C#, Python 写过这种基础的东西, 最终发现, 某些细节只有在 C 这种语法糖特别少的语言上才能理解的透彻, 虽然初期痛苦, 而且代码冗长, 但有助于你从基础的东西向上走, 或者向下走到汇编, 机器码
    ch2
        9
    ch2  
       203 天前
    组成原理建议你从软件逆向破解、单机游戏外挂研究来学,比较有意思,哪里看不懂再补哪里的基础知识
    necomancer
        10
    necomancer  
       203 天前
    @xiaowei0823 中枪
    xxfye
        11
    xxfye  
       203 天前 via Android
    王道不适合初学者吧,适合有一点印象又捡起来看的。
    数据结构没啥可说的,看再多的书都不如打几盘 cf 加总结。
    xxfye
        12
    xxfye  
       203 天前 via Android
    @Poluk 多看书,少听课。
    csapp 写得这么简明易懂,我没见国内把哪门课把机组讲好。
    国内操作系统倒是有不少好课。
    a62527776a
        13
    a62527776a  
       203 天前
    计算机组成原理 有专门的黑皮书
    https://item.jd.com/12157932.html
    就是计算机组成原理 比较入门
    harwck
        14
    harwck  
       203 天前
    看视频只是浪费时间最后什么都学不会,书上写的这么简洁明了为什么还需要视频?
    CSAPP, Computer Architecture, Algorithms 等
    Poluk
        15
    Poluk  
    OP
       203 天前
    @thinkershare 好,我一直觉得用 c 的话还得先去打个基础 再去碰数据结构的课,所以就暂且想用自己学的 java 来学
    VeryZero
        16
    VeryZero  
       203 天前
    王道的没看过,哈工大的视频感觉不错。。
    Kininaru
        18
    Kininaru  
       203 天前 via Android
    最近也在看书,机械工业出版社的《现代操作系统》我觉得挺不错的,看完之后对于 C/C++ 的编译有了更深的理解。

    同时也在看《计算机网络 自顶向下方法》,不过感觉这本书并不适合直接看,我是先看了课本《计算机网络 谢希仁》再看的自顶向下。

    室友买了 CSAPP ,打算看完《计算机系统》再看。不过明年要考研了,如果没时间看那就等读研(或者上班)了再看。

    大一大二搬砖搬吐了,还是修炼内功比较舒服。不过我觉得学 CS 还是应该多看文史类的书,代码写久了就会像机器一样思考,如果不看点文史类的来中和,人就会变成机器零件...
    MoYi123
        19
    MoYi123  
       203 天前
    @xxfye cf 不太合适吧, div2 的 ABC 一般都不会用到能叫出名字的算法或者数据结构, 还不如去 leetcode.
    thinkershare
        20
    thinkershare  
       203 天前
    C 非常简单, 如果你有 Java 的基础, 你只需要理解 2 个概念, 指针(可运行,可操控不安全的引用), 内存堆栈布局结构. 作为一门语言的 C 是简单,简洁,且强大的, CS 基础的任何一门基础课程使用 C 都足够完成任务, Java,C#这种, 主要是为了工程和理解另外一个重要概念而准备的(强类型, 类型结构显示定义), 等你打好基础后, 你发现你还至少需要学 1-2 种面向对象, 1-2 种函数式, 或者一些四不像, 混杂了多种编程范式的语言, 然后需要训练工程能力, 再然后是架构能力或者去做基础设施, 就不需要搞这些应用层的东西了.
    最重要的一点: 技术并不值钱, 值钱的是你使用技术解决了某个特定领域有价值的问题, 所以你最终会发现, 业务领域才是一个巨大的天坑, 每一个小领域都需要耗费大多数人一辈子
    @Poluk
    wanguorui123
        21
    wanguorui123  
       203 天前
    先学习下数字电路原理
    Poluk
        22
    Poluk  
    OP
       203 天前
    @thinkershare 啊好的,受教了!
    Poluk
        23
    Poluk  
    OP
       203 天前
    @wanguorui123 这课听起来应该会比较劝退吧哈哈哈哈,还会涉及物理知识吧
    Poluk
        24
    Poluk  
    OP
       203 天前
    @Kininaru 好的,受教了,已经马住了
    Poluk
        25
    Poluk  
    OP
       203 天前
    @justrand 谢谢谢谢!
    wanguorui123
        26
    wanguorui123  
       203 天前
    @Poluk 涉及到 MOS ,PMOS 管
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   3552 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 10:12 · PVG 18:12 · LAX 03:12 · JFK 06:12
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.