2022 年计算机基础最全自学指南!

2023-05-27 0 871

我们好,我是 Rocky0429。

具体来说上看两张图,计算机系统专业理工学院六年须要自学的专业课程。

2022 年计算机基础最全自学指南!

可能将不老师校略有差别,大体上都略有相同。

对想自修计算机系统的老师,能依照下面的专业课程,自修方可。

但文本那么多,的确要有重点项目的去自学,当中计算机系统此基础很大要要学,无论之后复试找组织工作却是祖慧、备考都很管用。

我在图中做了记号:

计算机系统程序与演算法计算机系统共同组成基本原理作业系统计算机系统网络资料库
2022 年计算机基础最全自学指南!

下面是N64干的蔬果,确保不许你沮丧!提过帮我

雅雷呀!

1、计算机系统程序与演算法

—Update 2022/11/15

我们始终想的计算机系统程序与演算法自学走线崭新升级换代啦!!!

全文 5k+ 字,文本很干,我们能先珍藏再貌似。

Rocky0429:这才是你最想的计算机系统程序与演算法自学走线31 赞成 · 5 该文该文2022 年计算机基础最全自学指南!
2022 年计算机基础最全自学指南!
图片放大看的更清晰哟~

—end

程序 = 计算机系统程序 + 演算法。

计算机系统程序经常与演算法放在一起,在有些高校,会存在“计算机系统程序”和“演算法设计与分析”这样两门课。

这就造成很多老师懵圈,计算机系统程序与演算法有什么区别?甚至有些老师认为这就是一种。

其实吧:

计算机系统程序主要讲解数据的组织形式。就是我们要怎样把这些数据存储起来,所以有数组、链表、栈、队列、树、图,这是计算机系统程序的重点项目。演算法,则注重的是思想。比如数组里的元素怎么排序、怎么找到最大的数和最小的数等等。说白了就是解决现实中问题的思想。所以才会有贪心、动态规划等这些演算法。

计算机系统程序与演算法,无论你怎么想,很大要认真学!无论复试却是备考都是必考!

下面总结一些重要的知识点吧,这样才能有针对的学。

【复杂度分析】

时间复杂度空间复杂度

自学计算机系统程序与演算法的第一课,我永远都选复杂度分析,在我看来,这是计算机系统程序与演算法中最重要的知识点,且不接受任何反驳。

该文推荐:

保姆级教学!彻底学会时间复杂度和空间复杂度

【计算机系统程序】

数组(Array):数组是一种聚合数据类型,它是将具有相同类型的若干变量有序地组织在一起的集合。链表(Linked List):链表是一种数据元素依照链式存储结构进行存储的计算机系统程序,这种存储结构具有在物理上存在非连续的特点。栈(Stack):栈是一种特殊的线性表,它只能在一个表的一个固定端进行数据结点的插入和删除操作。队列(Queue):队列和栈类似,也是一种特殊的线性表。和栈相同的是,队列只允许在表的一端进行插入操作,而在另一端进行删除操作。散列表(Hash table):散列表源自于散列函数(Hash function),其思想是如果在结构中存在关键字和T相等的记录,那么必定在F(T)的存储位置能找到该记录,这样就能不用进行比较操作而直接取得所查记录。堆(Heap):堆是一种特殊的树形计算机系统程序,一般讨论的堆都是二叉堆。树(Tree):树是典型的非线性结构,它是包括,2 个结点的有穷集合 K。图(Graph):图是另一种非线性计算机系统程序。在图结构中,数据结点一般称为顶点,而边是顶点的有序偶对。

【操作计算机系统程序】

查找:计算机系统程序里查找满足很大条件的节点。一般是给定一个某字段的值,找具有该字段值的节点。插入:往计算机系统程序中增加新的节点。删除:把指定的结点从计算机系统程序中去掉。修改:改变指定节点的一个或多个字段的值。排序:把节点按某种指定的顺序重新排列。例如递增或递减。

【计算机系统程序书籍推荐】

《大话计算机系统程序》、《计算机系统程序与演算法分析》

《大话计算机系统程序》这本书与市场上的同类计算机系统程序图书相比,文本更加趣味易读,演算法讲解细致深刻。

是一本非常适合自修的读物。

2022 年计算机基础最全自学指南!

这本书通篇以一种趣味方式来叙述,大量引用了各种各样的生活知识来类比,并充分运用图形语言来体现抽象文本,对计算机系统程序所涉及到的一些经典演算法做到逐行分析、多演算法比较。

如果你却是看不懂,能看我写的图解,不过有点慢,但绝对通俗易懂:

数组:蛋蛋惨遭数组滑铁卢,复试官建议回村养猪。

链表:链表,画几下就整明白了!

栈和队列:呔!“栈”住,队列!

字符串:关于字符串,你知道这些么?

顺便说一句,我最新写的电子书《二叉树修炼之道:从入门到实战》上线了,共39 篇该文, 8w 余字,当中包括二叉树、二叉搜索树、平衡二叉树等6 篇入门精讲,及 37 道图解 LeetCode 二叉树经典题目,几乎每道实战题我都提供了递归法和非递归法(迭代法),我们能尽情观看~

【演算法】

自学演算法的套路很简单,多看、多写、多上机。

回溯演算法分治演算法枚举演算法贪心演算法动态规划

查找演算法

二分查找散列表查找树结构查找

字符串匹配

暴力匹配KMP演算法

10大排序演算法

冒泡排序选择排序插入排序希尔排序归并排序堆排序快速排序计数排序基数排序桶排序

【演算法书籍推荐】

《演算法图解》

示例丰富,图文并茂,这是一本像小说一样的演算法入门书。

无论你是专业程序员,却是编程爱好者,亦或是须要重温演算法的计算机系统专业学生,这本书都是你不二的选择。

书中的前三章将帮助你打下此基础,带你自学二分查找、大 O 表示法、两种基本的计算机系统程序以及递归等。

余下的篇幅将主要介绍应用广泛的演算法,具体文本包括:面对具体问题时的解决技巧,比如,何时采用贪婪演算法或动态规划;散列表的应用;图演算法;Kzui 近邻演算法。

2022 年计算机基础最全自学指南!

《演算法(第 4 版)》

演算法领域的经典参考书,包含了经过几十年演化而成的演算法核心知识体系。

书中讲解了多种演算法和计算机系统程序,让你能够在各种计算机系统环境下实现、调试并应用它们。

作为演算法领域经典的参考书,全面介绍了关于演算法和计算机系统程序的必备知识,并特别针对排序、搜索、图处理和字符串处理进行了论述

第 4 版具体给出了每位程序员应知应会的 50 个演算法,提供了实际代码。

2022 年计算机基础最全自学指南!

【视频教程推荐】

《计算机系统程序》,浙大陈越和何钦铭教授联合授课,专业课程非常棒体系完整,上课体验不错,同时难度系数在线,质量也很好。能够学到很多的思维方法和技巧,想学好计算机系统程序的老师们千万不要错过。

链接:计算机系统程序_浙江理工学院_中国理工学院MOOC(慕课)

2022 年计算机基础最全自学指南!
《计算机系统程序与演算法》,这门专业课程的最大特点是理论和实践的结合,你将自学到解决各种计算问题的演算法技巧,并实现大约100个演算法编码问题。

链接:Data Structures and Algorithms

【网站推荐】

如果却是觉得学起来很吃力,能借助下面这个网站来自学。

VisuAlgo,计算机系统程序和演算法动态可视化网站。

链接:计算机系统程序和演算法动态可视化 (Chinese)

2022 年计算机基础最全自学指南!

【刷题】

计算机系统程序与演算法的自学,往往要伴随着“刷题”,如果没特殊情况,我建议我们刷 LeetCode 就好。

刷题依照分类来刷,如果不知道刷哪几道题,能看下这个前字节大佬的刷题笔记:

两个月斩获 70k star,前字节大神刷题笔记mp.weixin.qq.com/s?__biz=MzI0NjAxMDU5NA==&mid=328435156&idx=1&sn=f189d0ab3a5faa4e224b6e3f2b485be1&chksm=7f22e25948556b4f0fad0ec8f42dabc17abaf8b097421861acf92516dcde1582525ee1b4dbbb#rd2022 年计算机基础最全自学指南!
2022 年计算机基础最全自学指南!

针对 LeetCode,题的解法有很多,我们往往追求的是最优解,这里有一份清华学长整理的 LeetCode 最优解,强烈推荐:

两者配合起来应该非常舒爽。

我在理工学院的时候参加 ACM,拿过亚洲区预赛银奖,刷题贯穿了我的整个理工学院生涯,总结了一些刷题的经验,感兴趣的能看下。

演算法题从入门到放弃?刷了几千道演算法题,关于如何刷题有些话我想对你说

2、计算机系统共同组成基本原理

计算机系统共同组成基本原理,即“计算机系统”“共同组成”的“基本原理”。

我觉得它是所有计算机系统此基础专业课程中最难学的一门课,整个专业课程的核心就是使用数字逻辑电路和触发器搭建一个能运行汇编指令的机器。

【书籍推荐】

《计算机系统是怎样跑起来的》、《程序是怎样跑起来的》

正是因为计算机系统共同组成基本原理难学,所以对初学者来说,比起其他几门,这门课的入门书籍选择就更得友好。

《计算机系统是怎么样跑起来》和《程序是怎么跑起来的》,这是两本很薄,作者用大白话的方式来阐述知识,图文并茂,对初学者来说相当 nice。

相比自学的心态,更多是带着好奇心的心态去读。

《计算机系统是怎样跑起来的》

本书倡导在计算机系统迅速发展、技术不断革新的今天,回归到计算机系统的此基础知识上。通过探究计算机系统的本质,提升工程师对计算机系统的兴趣,在面对复杂的最新技术时,能够迅速掌握其要点并灵活运用。

2022 年计算机基础最全自学指南!

《程序是怎么跑起来的》

本书从计算机系统的内部结构开始讲起,以图配文的形式详细讲解了二进制、内存、数据压缩、源文件和可执行文件、作业系统和应用程序的关系、汇编语言、硬件控制方法等文本,目的是让读者了解从用户双击程序图标到程序开始运行之间到底发生了什么。

2022 年计算机基础最全自学指南!

【视频推荐】

视频首推卡内基梅隆理工学院的《深入理解计算机系统系统》系列专业课程,英语不好?没关系,有中英文本幕,看完这套视频,知识+六级顺利拿到手。

链接:【精校中英字幕】2015 CMU 15-213 CSAPP 深入理解计算机系统系统 专业课程视频_哔哩哔哩_bilibili

看这个视频的配套教材是《深入理解计算机系统系统》。

2022 年计算机基础最全自学指南!
此外,国内的能看下哈工大刘宏伟老师的专业课程(135讲),老师的课讲的非常好,计算机系统共同组成基本原理很难学,但刘老师的课简直是福音。循循善诱的教学,把枯燥的课程讲的十分透彻,拓展的也很棒!

链接:计算机系统共同组成基本原理(哈工大刘宏伟)135讲(全)高清_哔哩哔哩_bilibili

2022 年计算机基础最全自学指南!

3、作业系统

无论你自学什么语言,都避免不了和作业系统打交道。所有语言的最后执行,都是靠操作系统。

比如你自学 Java,用到多线程技术,实际上作业系统才是负责管理进程和线程的。

不懂作业系统,你在未来自学编程语言的高级特性,涉及到线程进程调度,内存分配,或者是自学 Linux 相关的知识时,都会一头雾水。

只有学会了作业系统,才能够更好地自学其他语言和技术。

所以,作业系统是程序员进阶必会的知识。

【书籍推荐】

入门推荐

《作业系统导论》、《现代作业系统》

深入系列

《深入理解计算机系统系统》

以程序员的视角理解计算机系统系统。

这是一本入门级别的书,这本书其实并不“深入”,它谈论的文本却是相对比较浅的。

“覆盖面广”,其实就是这本书的最大优点。它告诉我们计算机系统是如何设计和组织工作的,作业系统有哪些重点项目,它们的作用又是什么。

看看这本书后,我们就能对计算机系统系统各组件的组织工作方式有了理性的认识。在很大程度上,其实它是在锻炼思维方式 — 计算思维。

2022 年计算机基础最全自学指南!

【视频推荐】

作业系统,说实话,在刚开始学的时候不建议直接闷头看书。

因为书看起来是真没意思。

这里推荐清华理工学院的作业系统专业课程,B站上可看。分上下。

链接:【清华理工学院】作业系统 陈渝 全113讲(上)_哔哩哔哩_bilibili

链接:【清华理工学院】作业系统 陈渝 全113讲(下)_哔哩哔哩_bilibili

看视频的时候能结合着下面的【书籍推荐】。

看(上)的时候能搭配《作业系统导论》

2022 年计算机基础最全自学指南!

看(下)的时候能搭配《现代作业系统》

2022 年计算机基础最全自学指南!
也能看哈工大李治军老师的课,,质量相当高,即讲了实现,还开放了 Lab,不过对我们有一个小要求,须要很大的共同组成基本原理和汇编知识。
2022 年计算机基础最全自学指南!

4、计算机系统网络

计算机系统网络的相关知识在组织工作时使用的频率较多的。

自学计算机系统网络,你须要懂得Socket编程,知道TCP/IP网络模型,了解OSI七层网络架构,知道一个数据包是如何层层包装,再层层拆包,从客户端发送到服务端。

但计算机系统网络好学的多,因为计算机系统网络不抽象,在现实生活中,都能找的到例子。

【书籍推荐】

《图解 HTTP》

图文并茂,简单易懂,很适合入门。

把一本书写薄还好读并且覆盖主要的知识范围并不是一件容易的事情。

这本书做到的,而且从对HTTP知识的覆盖程度到易读性都做得相当好。

本书的特色为在讲解的同时,辅以大量生动形象的通信图例,更好地帮助读者深刻理解HTTP通信过程中客户端与服务器之间的交互情况。

2022 年计算机基础最全自学指南!

《计算机系统网络》

绝大部分都在用谢希仁的这本《计算机系统网络》,讲的很好,浅显易懂,同样也是备考 408 的常用教材。

2022 年计算机基础最全自学指南!

【视频推荐】

具体来说必须强推湖大教书匠的计算机系统网络微课堂,yyds!!!

一个动图做的最好的计算机系统网络视频专业课程,老师讲课逻辑清晰而且特别容易懂,b 站上有视频,能 1.5 倍速使用哟。

链接:计算机系统网络微课堂(有字幕无背景音乐版)(陆续更新中……)_哔哩哔哩_bilibili

2022 年计算机基础最全自学指南!
还有推荐哈工大李全龙老师的《计算机系统网络》

链接:哈尔滨工业理工学院 计算机系统网络_哔哩哔哩_bilibili

2022 年计算机基础最全自学指南!

计算机系统网络中的细节非常多,李

比如Http协议的错误码分类,我们记不住,而且记住也没任何意义,知道有这个玩意方可,须要的时候,百度一下方可。

5、资料库

资料库就是存储数据的地方,但也不只是这么简单。

自学资料库,不仅要懂得SQL语句,表设计结构这些此基础部分,还要懂索引、慢查询优化,配置参数调优。

再深入点儿还要自学SQL优化、备份与恢复、架构优化等等进阶文本。

【书籍推荐】

入门系列

《SQL 基础教程》、《SQL自学手册》、《资料库系统概论》

新手学 SQL,这里我不推荐《SQL 必知必会》啥的。

而是推荐这本《SQL 此基础教程》。

这本书介绍的节奏的更加平缓,并且用图示和关键字加粗更加生动地介绍知识,适合零此基础的学生。

对零此基础的朋友来说Mick的《sql此基础教程》更容易看懂学会,非常适合入门者自学。

如果只推荐一本书的话,我只推荐这本。

2022 年计算机基础最全自学指南!
深入系列

《MySQL技术内幕——InnoDB存储引擎》 《Redis设计与实现》

【视频推荐】

资料库本来我都是强推人大王珊老师的,但人大的mooc课实在太难受了,幸好又发现了战德臣老师。 哈工大战德臣老师,讲解的很细致,不是照本宣科,非常考虑学生的自学思路,把资料库和应用上的逻辑关系做了很好的梳理,墙裂推荐!
2022 年计算机基础最全自学指南!

码字不易,提过帮我

雅雷呀

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务