有哪些网上自学课程的好网站( 三 )


最后,这个网站的学习教程和资料一直在更新,是一个非常好用的英语学习网站。



10:简单教程https://www.twle.cn/
简单教程是一个完全免费的高质量编程开发学习网站。
它提供了丰富的基础学习教程,包括:微信小游戏开发、移动开发、前端开发、后端开发、java技术、.NET、数据库和缓存、运维开发、XML。
其中每个教程都进行了详细的分类,例如前端开发包括:HTML、HTML5、CSS、CSS3、JavaScript、Canvas、AJAX、jQuery、Vue.js、React、AngularJs,后端开发包括:Go、Python、PHP、Node.js、C、C++、Rudy、Django、正则表达式。
它不仅提供学习教程,还支持学习交流,你可以通过网站的论坛与他人学习交流,你还可以通过网站的问与答版块向他人提问。



它的所有教程都是以文字的形式呈现,每个教程都分为多个章节,每个章节含有大量实例,让你学习起来轻松高效.
例如Python3基础教程包括:Python3简介、Python3环境搭建、Python3交互式编程、Python3基础语法、Python3变量类型、Python3注释、Python3运算符、Python3整数类型(数字)、Python3字符串等等。



11:中国人民大学英语口语能力标准http://sope.ruc.edu.cn/displaynews.php?id=927
中国人民大学英语口语能力标准是一个权威且全面的英语口语训练学习网站,如果你想提高自己的英语口语,这个网站,你值得收藏使用。
它提供30个完全免费的英语语音和英语朗读视频教程,帮助你提高你的英语口语。



它提供的视频教程包括:节奏、英汉节奏模式对比、语调、意群、调群和停顿、信息焦点与语调、句重音与弱式、句重音、句重音重点例句、音变、连读、省音、不完全爆破、同化。
还有:元音长度、元音与辅音、英语音素概述、单元音、双元音、辅音、爆破音、摩擦音、破擦音、鼻音、其它辅音、中国学生的发音问题、英美语音对比。



12:WikiHowhttps://zh.wikihow.com
wikihow是一个综合技能聚合网站,不管生活中,工作中,遇到不会的东西,你都可以利用这个网站搜索。
它上面还免费提供了很多生活,工作小技巧,并且包含不同的专业,不同的方面:艺术与娱乐、汽车与其它交通工具、计算机与电子产品、教育与交流、家庭生活、金融与商业、饮食与休闲、健康、兴趣与手艺、家居与园艺、假期与节日、个人形象与时尚、宠物与动物、旅行、工作。
例如:如何远程关闭电脑,如何将图片转换成PDF,如何清洁电脑显示器,如何给iPhone添加铃声,如何在忘记密码的情况下打开电脑,如何在Excel中制作工资表,如何修复互联网连接,如何制作新鲜的芒果汁,如何自制牙膏,如何判断女孩是否在利用你,如何做到夏天不发胖,如何清洗浴缸上的顽固污渍等等技巧;这个网站全部提供。





■我是转专业学计算机的选手,这里就提供一个怎么学习(自学)计算机(CS)的路线。
主要针对的是想在国外学习CS的小伙伴,因为我是在国外转CS的,对于国内的情况不熟悉。
如果是想认真学好计算机这门学科,并找到一份工作,那自然就需要看书,上课,和练习相结合。
三管齐下,缺一不可!
所以我从三个方面来讲一下,先是书籍和课程推荐,再是网课选择,最后是练习平台。
课程推荐,以及上课(自学)顺序课程的话,最重要的就是下面六门课:
数据结构,算法,计算机组成原理,计算机操作系统,计算机网络,数据库系统。上面的这六门课,无论你是将来找工作,读研,还是读博,都是最最重要的。而且学习的顺序就是上面的这样,美国一般会开一门计算机基础,教一门语言,Python和Java居多。然后就是数据结构,在这之后就学算法。以此类推。
如果你想在美国找工作的话,就需要把时间分配好,去刷题,刷project。因为如果你到毕业的时候哪怕GPA很高,学校也不错,能过得去简历关,面对你最重要也是最难的一关就是面试。
切记上面这一点。面试就是算法面试,除了少部分公司,比如Amazon,特别注重behaviorquestion(BQ)之外,其他公司基本一溜的需要你对算法和数据结构掌握得很好才行。
以下的情况都是针对国外,尤其是北美而言的。
GPA有3.5+就好,一定要重视刷project,刷题。
有project才能过简历关,LeetCode熟练才能过面试关。毕竟读CS或是转CS的大部分人,还是以读书找一份程序员的工作为导向的。
因为国外实习或是newgrad找全职,面试主要考察算法和数据结构。
需要熟练掌握一门语言(Python,Java,或是C++),然后用你熟悉的语言来实现基本的算法和数据结构。

大家不管是学习还是准备面试,良好的基础是一切的开端。我自己比较喜欢看书,这些书你不需要都看,感觉也没那么多时间全部看完。我把他们分成几个类别:算法,数据结构,算法面试,系统设计,编程能力提高五个方面。最后再附上两本,一本是计算机基础,另外一本是C++语言。
接下来,每个方面我都会推荐其中特别适用的书。
首先是算法,算法和数据结构是计算机学习的基石。无论你学习计算机的任何方向,没有扎实的算法和数据结构,肯定学习起来就捉襟见肘了。

我自己非常喜欢的普林斯顿算法红宝书第四版,这本书是普林斯顿超级大神教授RobertSedgewick的神作,该书还有配套的MOOC课程,以后有时间再写网课了。该书是特别棒的算法和数据结构的教程,全书提供Java的实现,而且大部分内容也放在了本书的配套网站上:https://algs4.cs.princeton.edu/home/本书的优点是会把算法详细的过程掰开揉碎地讲明白了。书里面有大量的配图,更不说配套网站上的ppt,简直就是艺术。一句话,1万分推荐。就一个缺点,没有讲动态规划(DP),所以我在下面也推荐一些涉及到DP的书籍。你认真读此书的话,会发现很多大公司的面试题就来自它的习题里面。

还有另外一本算法神作就是算法设计手册了。这一本则是把算法分类了,还提供了特别多适用的算法应用场景,让读者知其然,并知其所以然。这本书的数和图部分,还有递归回溯,是特别多人拍手称赞的地方,值得认真看三遍。这本书就讲了第一本里面遗憾缺失的DP。总之,这两本都是超级强推。

提到算法,肯定会提到算法圣经之算法导论,这本书是算法百科全书,优点是全,缺点是太全太厚,数学太多了。是很好的参考书,但不适合短期突击学习。感兴趣的读者可以挑战一下。
算法导论在coursera上的配套课程:MasterthefundamentalsandanalysisofalgorithmsfromStanford。
接下来的两本,可以当做是算法的课外读物,写得浅显易懂。刚开始学算法的小伙伴,可以先从他们着手,第一本其实是合集,叫AlgorithmsIlluminated。分三个部分:基础,图算法和数据结构,贪心算法和DP。该合集页数比较短,但是看完之后,对算法的理解肯定会加深不少。
这个系列暂时还没有中文翻译,但Coursera上面有这个算法系列的课程:LearnDataStructuresandAlgorithmsfromUCSD/HSEonCoursera
提到Coursera的课程,就多说一句,现在最火的MachineLearning的课程在这里:AndrewNg\u0026#39;MachineLearning:MastertheFundamentals
第二本就是算法图解了,语言风趣,有比较多的插图。入门很合适。
最后一本算法书,名字就叫算法,作者还提供免费的教程,我个人觉得对面试帮助很大。因为里面讲解算法的思路,有点以题目为导向的感觉,其中递归和DP部分,让我有醍醐灌顶之感。
可以通过下面的链接,直接官方下载PDF:
byJeffErickson
第二部分是数据结构,这里就推荐三本书,一本是Java,一本是Python。Java的就是鼎鼎大名的CS61B的课程推荐教程:DataStructuresandAlgorithmsinJava。Python的也是一本畅销书:ProblemSolvingwithAlgorithmsandDataStructuresUsingPython。


还有就是中文的《大话数据结构》,数据结构中文入门读物的不二选择。
第三部分是算法面试,第一本就是口口相传的CrackingtheCodingInterview(CC189)。说实话,这本书入门勉勉强强,因为现在的算法面试已经远远不是这个难度系数了。但入门还是不错的。

现在比较适合的是这一本:ElementsofProgrammingInterviewsinJava:TheInsiders\u0026#39;Guide(EPI)。这本书比较赞的地方在于,每个题目会给读者抽丝剥茧,将题目讲得很细致,从bruteforce开始,一步步推导到最优化解,中间没有跳跃。这样的方式和面试很类似,因为面试过程中,你不一定立马就有最有解。你需要和面试官沟通,一步步走向胜利。

接下来是系统设计。现在的面试,尤其是比较资深的职位,说白了就是如果你跳槽的话,就会需要面系统设计。这里就推荐一本书:DesigningData-IntensiveApplications。

最后来看看编程能力提高方面。这个方面的话,你如果是Java玩家,这本EffectiveJava你肯定是需要熟读的了。JoshBlock是Java语言开发的超级大牛,业界都在推荐。跟着大牛来一波不会错的。
下面的两本就是有关程序员素养培养方面的书籍了。程序开发的方方面面都会涉及到。也都是超级出名的书:CleanCode:AHandbookofAgileSoftwareCraftsmanship以及CodeComplete:APracticalHandbookofSoftwareConstruction,SecondEdition


最后再推荐两本,一本C++:C++primer,最近要开始学习C++,大家都推荐用这一本入门,也是C++的经典教程了。

另外一本是鼎鼎大名的CSAPP:ComputerSystems:AProgrammer\u0026#39;sPerspective。这一本对掌握计算机的基础,很有帮助。计算机底层方面的知识,讲得很透彻,对于计算机专业的同学来说,肯定是非常值得一读的。

网课可以跟着这几门来学网络课程的话,则是十二分强推UCB的CS61B。他们家的计算机系的CS61A,B,C课,简直制霸各种课程推荐列表。
CS61B的官网在这里:https://inst.eecs.berkeley.edu/~cs61b/fa19/这门课以Java为主。2.MIT的算法课,教程用的算法导论,也是强推的网课:https://www.youtube.com/watch?v=HtSuA80QTyo\u0026amp;list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb这门算法则基本不涉及到语言层面,主要是算法层面,讲得很好。
3.然后就是红宝书的网课以及配套官网:
https://algs4.cs.princeton.edu/lectures/
https://www.youtube.com/watch?v=1QZDe28peZk\u0026amp;list=PLRdD1c6QbAqJn0606RlOR6T3yUqFWKwmX
4.斯坦福2018WinterCS106B:ProgrammingAbstractions,虽然从名字不太能看出来,但其实是用C++讲数据结构,想用C++的小伙伴不容错过,我看了一半了,特别有帮助,尤其是对递归和回溯的讲解,简直醍醐灌顶。
现在因为不可知的原因,Youtube上面已经下架这门课程,但更方便的是,咱们可以在B站直接看:
https://www.bilibili.com/video/av21620553?p=1
最后来说说练习平台光学(看书)不练,计算机的知识是学不会的。
如果你在国外的话,面试找工作最主要的就是掌握好算法和数据结构。
如果你在北美的话,初级程序员面试基本就是考察数据结构和算法,所以大家一定要勤加训练!
LeetCode。这是现在刷题找工作最热门的网站了。
但LeetCode现在题目也太多了,一共1300+了,而且一直在增加!!!
全刷完没必要,也不高效,所以推荐看下面的回答:
刷完LeetCode是什么水平,能拿到什么水平的offer?2.Educative
Educative:InteractiveCoursesforSoftwareDevelopers对算法最有帮助的课程是:
LeetCode按照怎样的顺序来刷题比较好?专门针对数据结构的课程有:
C++:
DataStructuresinC++:AnInterviewRefresherJavaScript:
DataStructuresinJavaScript:AnInterviewRefresherJava:
DataStructuresinJava:AnInterviewRefresherPython:
DataStructuresinPython:AnInterviewRefresher我上过其中的Java版本,课程是把数据结构里面的基础数据结构都用java实现了一遍,对于用java的同学特别有帮助,java的基础在刷题的过程中,还是要必须掌握的。