首页 > 文章资讯 > 游戏问答
一个不是很了解CS(计算机科学)的人,该从哪里开…
更新时间:2022-05-02 09:36:30 作者:云寺手游
2开元2022棋牌
开元2022棋牌
益智棋牌 | 47.56MB | v3.3.7
神殿娱乐
神殿娱乐
休闲益智 | 47.56MB | v3.3.7
我才是棋牌
我才是棋牌
休闲益智 | 47.56MB | v3.3.7
所谓棋牌
所谓棋牌
休闲益智 | 47.56MB | v3.3.7

这个题我碰巧会,而且我是转专业学计算机的。现在也是CS的TA,所以对美国的CS本科课程还算了解。
课程的话,最重要的就是下面五门:
数据结构,
算法,
计算机操作系统,
计算机网络,
数据库系统。
外加计算机组成原理。
上面的这六门课,无论你是将来找工作,读研,还是读博,都是最最重要的。而且学习的顺序就是上面的这样,美国一般会开一门计算机基础,教一门语言,Python和Java居多。然后就是数据结构,在这之后就学算法。以此类推。
如果你想在美国找工作的话,就需要把时间分配好,去刷题,刷project。因为如果你到毕业的时候哪怕GPA很高,学校也不错,能过得去简历关,面对你最重要也是最难的一关就是面试。
切记上面这一点。
面试就是算法面试,除了少部分公司,比如Amazon,特别注重behavior question (BQ)之外,其他公司基本一溜的需要你对算法和数据结构掌握得很好才行。
以下的情况都是针对国外,尤其是北美而言的。
GPA有3.5+就好,一定要重视刷project,刷题。
有project才能过简历关,LeetCode熟练才能过面试关。毕竟读CS或是转CS的大部分人,还是以读书找一份程序员的工作为导向的。
因为国外实习或是new grad找全职,面试主要考察算法和数据结构。
需要熟练掌握一门语言(Python,Java,或是C++),然后用你熟悉的语言来实现基本的算法和数据结构。
<hr/>网课可以跟着这几门来学
网络课程的话,则是十二分强推UCB的CS61B。他们家的计算机系的CS61A,B,C课,简直制霸各种课程推荐列表。
CS61B的官网在这里:https://img.fayunsi.com.cn/img/2022/05/02/ahrmtxipwbi 这门课以Java为主。
2. MIT的算法课,教程用的算法导论,也是强推的网课:https://www.youtube.com/watch?v=HtSuA80QTyo&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb 这门算法则基本不涉及到语言层面,主要是算法层面,讲得很好。
3. 然后就是红宝书的网课以及配套官网:
https://algs4.cs.princeton.edu/lectures/
https://www.youtube.com/watch?v=1QZDe28peZk&list=PLRdD1c6QbAqJn0606RlOR6T3yUqFWKwmX
4. 斯坦福2018 Winter CS106B: Programming Abstractions,虽然从名字不太能看出来,但其实是用C++讲数据结构,想用C++的小伙伴不容错过,我看了一半了,特别有帮助,尤其是对递归和回溯的讲解,简直醍醐灌顶。
现在因为不可知的原因,Youtube上面已经下架这门课程,但更方便的是,咱们可以在B站直接看:
<hr/>最后来说说练习平台
光学(看书)不练,算法和数据结构是学不会的。
所以推荐一些好的刷算法和数据结构平台,当然另一方面也是为了找工作面试做准备咯。
如果你在北美的话,初级程序员面试基本就是考察数据结构和算法,所以大家一定要勤加训练!
LeetCode。
这是现在刷题找工作最热门的网站了。
但LeetCode现在题目也太多了,一共1300+了,而且一直在增加!!!
全刷完没必要,也不高效。
<hr/>2. Educative
<hr/>

如果想买订阅(Subscriptions)的小伙伴,则可以用ZHIHUEDU-10(必须一模一样输入)的coupon code来获取额外九折的优惠,按年standard订阅模式适用。按月和按两年的无效。
现在推出的premium模式,有按年和两年订阅的方式,也能使用ZHIHUEDU-10来享受额外九折!
<hr/>他家最最出名的还是这门Grokking the System Design Interview, 但凡提到准备系统设计,这门课都上入门必推的:
以及OOD: Grokking the Object Oriented Design Interview
这门机器学习面试指南是这个系列最新的课程:
目前市面上机器学习面试相关的课程比较少,这门课程应该非常值得!
还有这门算法课:
这门课程是一个算法总结提高的课程,它把算法面试中可能遇到的题分成了各种模式,每类题各个击破。
对算法最有帮助的课程对应下面这篇回答:
下面这个系列是新出的算法课程:通过解决大公司真实场景问题来破解算法面试。
下面是用Java的:
还提供了Python:
C++:
以及JS版本:
<hr/>
专门针对数据结构的课程则有:
C++:
JavaScript:
Java:
Python:
我上过其中的Java版本,课程是把数据结构里面的基础数据结构都用java实现了一遍,对于用java的同学特别有帮助,java的基础在刷题的过程中,还是要必须掌握的。
课程从复杂度开始讲起,Arrays,LinkedLists, Stacks/Queues, Graphs, Trees, Trie, Heaps, Hash Tables等数据结构,全都实现了一遍。而且还有配套的基础LeetCode题。是一个入门的很棒的教程。选择其他语言的话,内容应该也是差不多的。
项目Project
看到评论区问项目推荐,特意更新一下我自己跟着刷项目的网站。下面这个网站是Java全栈,从Java的基础,前端三件套,以及Java的框架,应有尽有。最好的地方在于,用不同的技术栈实现天猫全栈。这样跟着一套学下来,技术方面就不会太差了。
如果你想专门学前端,可以去Udemy找几个网课跟着寻练。
计算机的经典书籍,则可以参考这个回答:

猜你喜欢
最新资讯