謝邀,直接上乾貨。

如果是需要系統學習CS的話,牆裂推薦一個自學計算機科學的神~~~奇寶藏——OSSU。

而且關鍵是免費!免費!免費!(土豪忽略)

OSSU——Open Source Society(開源社會大學)的簡稱。

https://github.com/ossu/computer-science#intro-cs

OSSU課程提供免費的線上計算機科學(Computer Science)教育。它不僅可以用於對計算機感興趣的在職人員進行職業培訓,也適用於計算機專業的小夥伴進行深入系統的學習。

這裡面的課程來自哈佛大學,普林斯頓大學,麻省理工學院等等,可以稱得上是「世界上最好的課程」。下面,我們來看一看,這個寶藏大禮包里有哪些內容。

全套課程可以劃分成四個部分,包括

  1. 入門簡介
  2. 核心課程
  3. 進階課程
  4. 項目呈現。

具體而言:

  • 入門簡介部分幫助我們開啟計算機科學的大門,可以在這個階段邊學邊看這個學科是否適合自己。
  • 核心課程類似於計算機科學課程的前三年必修課
  • 進階課程大概對應於計算機科學課程的最後一年的選修課
  • 項目呈現部分是供學生驗證、鞏固和展示其所學知識的機會,同時製作好的項目還可以選擇供世界各地的同行進行評估。

下面,小管家給大家介紹一下全套課程的具體內容,其中包括:編程概論、計算機科學概論、核心程式設計、核心數學、核心系統、核心理論、核心應用、核心安全、計算機科學進階、高級編程、先進的系統、高級理論、進階應用和最終的項目呈現。

編程概論

這個部分專門為零基礎小白設計,如果你從來沒有編寫過for循環,或者不知道編程中的字元串是什麼,可以從這裡開始。

這裡有兩個課程,適用於所有人的Python(alt) 和計算基礎,任選其一皆可。

適用於所有人的Python(alt)(時長:58小時)是從介紹Python開始,並使用Web API和資料庫進行實際的編程任務。

計算基礎(時長:138小時)也是先介紹Python,然後繼續介紹計算機科學的理論知識,例如排序和遞歸。

適用於所有人的Python(alt)

https://www.coursera.org/specializations/python

計算基礎

https://www.coursera.org/specializations/computer-fundamentals

計算機科學概論

這個部分是介紹計算機科學領域。這個課程的學習需要提前掌握高中代數的知識。

使用Python的計算機科學和編程簡介(alt)

https://www.edx.org/course/introduction-computer-science-mitx-6-00-1x-10

如何編碼課程以《如何設計程序》教科書為基礎。

核心程式設計

如何編碼-簡單數據

https://www.edx.org/course/how-code-simple-data-ubcx-htc1x

如何編碼-複雜數據

https://www.edx.org/course/how-code-complex-data-ubcx-htc2x

編程語言,A部分

https://www.coursera.org/learn/programming-languages

編程語言,B部分

https://www.coursera.org/learn/programming-languages-part-b

編程語言,C部分

https://www.coursera.org/learn/programming-languages-part-c

數學選修課

包括:微積分,線性代數,邏輯或概率。

微積分

微積分1A:微分https://www.edx.org/course/calculus-1a-differentiation

微積分1B:集成https://www.edx.org/course/calculus-1b-integration

微積分1C:坐標系和無限級數https://www.edx.org/course/calculus-1c-coordinate-systems-infinite-series

線性代數

線性代數的本質

https://www.youtube.com/playlist?list=PLZHQObOWTQDPD3MizzM2xVFitgF8hE_ab

線性代數-邊疆的基礎(alt)

https://www.edx.org/course/linear-algebra-foundations-to-frontiers-0

邏輯學

邏輯概論https://www.coursera.org/learn/logic-introduction

概率學

概率概論-不確定性科學

https://www.edx.org/course/introduction-probability-science-mitx-6-041x-2

核心數學

除了數學選修課外,在核心數學板塊還有離散數學相關的課程。

計算機科學數學

https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-042j-mathematics-for-computer-science-spring-2015/index.htm

核心系統

計算機科學概論-CS50(alt)https://www.edx.org/course/introduction-computer-science-harvardx-cs50x#!

從第一原理構建現代計算機:從Nand到Tetris(alt)https://www.coursera.org/learn/build-a-computer

計算機網路導論

https://www.youtube.com/playlist?list=PLEAYkSg4uSQ2dr0XO_Nwa5OcdEcaaELSG

破解內核

https://www.ops-class.org/

核心理論

分而治之,排序和搜索以及隨機演算法https://www.coursera.org/learn/algorithms-divide-conquer

圖搜索,最短路徑和數據結構

https://www.coursera.org/learn/algorithms-graphs-data-structures

貪婪演算法,最小生成樹和動態規劃https://www.coursera.org/learn/algorithms-greedy

再談最短路徑,NP完全問題及其處理方法https://www.coursera.org/learn/algorithms-npcomplete

核心安全

信息安全:上下文和簡介https://www.coursera.org/learn/information-security-data

安全編碼原理

https://www.coursera.org/learn/secure-coding-principles

識別安全漏洞

https://www.coursera.org/learn/identifying-security-vulnerabilities

識別C / C ++編程中的安全漏洞https://www.coursera.org/learn/identifying-security-vulnerabilities-c-programming

利用和保護Java應用程序中的漏洞https://www.coursera.org/learn/exploiting-securing-vulnerabilities-java-applications

核心應用

關係資料庫系統

https://www.coursera.org/learn/relational-database

機器學習

https://www.coursera.org/learn/machine-learning

計算機圖形學

https://www.edx.org/course/computer-graphics-uc-san-diegox-cse167x

軟體工程:簡介

https://www.edx.org/course/software-engineering-introduction-ubcx-softeng1x

軟體開發頂峰項目

https://www.edx.org/course/software-development-capstone-project-ubcx-softengprjx

高級編程

並行編程簡介(alt)(HW)https://classroom.udacity.com/courses/cs344

編譯器(alt)

https://www.edx.org/course/compilers

軟體調試

https://www.udacity.com/course/software-debugging--cs259

軟體測試

https://www.udacity.com/course/software-testing--cs258

LAFF-正確編程

https://www.edx.org/course/laff-on-programming-for-correctness

軟體架構與設計

https://www.udacity.com/course/software-architecture-design--ud821

先進的系統

電磁學,第1部分

https://www.edx.org/course/electricity-magnetism-part-1-ricex-phys102-1x-0

電磁學,第2部分

https://www.edx.org/course/electricity-magnetism-part-2-ricex-phys102-2x-0

計算結構1:數字電路

https://www.edx.org/course/computation-structures-part-1-digital-mitx-6-004-1x-0

計算結構2:計算機架構

https://www.edx.org/course/computation-structures-2-computer-mitx-6-004-2x

計算結構3:計算機組織

https://www.edx.org/course/computation-structures-3-computer-mitx-6-004-3x-0

高級理論

計算理論(講座)

http://aduni.org/courses/theory/index.php?view=cw

計算幾何

https://www.edx.org/course/computational-geometry-tsinghuax-70240183x

形式概念分析導論

https://www.coursera.org/learn/formal-concept-analysis

博弈論

https://www.coursera.org/learn/game-theory-1

進階應用

現代機器人技術https://www.coursera.org/specializations/modernrobotics

數據挖掘

https://www.coursera.org/specializations/data-mining

大數據

https://www.coursera.org/specializations/big-data

物聯網

https://www.coursera.org/specializations/internet-of-things

雲計算

https://www.coursera.org/specializations/cloud-computing

全棧Web開發

https://www.coursera.org/specializations/full-stack

數據科學

https://www.coursera.org/specializations/jhu-data-science

Scala中的函數式編程

https://www.coursera.org/specializations/scala

遊戲設計與開發

https://www.coursera.org/specializations/game-development

最後再嘮叨一點,任何知識最終最重要的是項目展示

學習最重要的還在於是否可以運用學到的知識來解決實際的問題。

搭建真實的項目不僅可以豐富我們的簡歷,還能夠鞏固我們的所學。

內容首發公眾號: 樂學Fintech

用代碼理解分析解決金融問題


如果是科班的話就這張圖

如果不是科班的話,建議還是python吧。


嚴格按照如下順序學習

python 學variable ifelse loop function

java 學class inheritance interface abstract

c++ 學內存管理 destructor

C++的同時學演算法和數據結構

- array/linked list

- 各種排序

- stack/queue

- tree heap hashtable

- 略微了解下 graph相關 bfs dfs 最短路徑等

到此為止基本功和內功就修鍊好了

就像是獨孤九劍的氣宗

剩下就是劍宗外功了

網站前端 後端 資料庫 大數據 app開發 大型遊戲開發 3d開發 再或者是運維 自動化之類的 你隨便找個感興趣的查查資料自己就會了


按照考研408課程學習。


額,先買一台還能說的過去的電腦吧


如果只是想拓展知識面的話,推薦京東搜索「計算機科學叢書」
推薦閱讀:
相关文章