算法工程師本科生學(xué)習(xí)計(jì)劃_第1頁
算法工程師本科生學(xué)習(xí)計(jì)劃_第2頁
算法工程師本科生學(xué)習(xí)計(jì)劃_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

算法工程師成長(zhǎng)計(jì)劃大學(xué)期間必須要學(xué)好的課程:C/C++兩種語言(或JAVA)、高等數(shù)學(xué)、線性代數(shù)、數(shù)據(jù)結(jié)構(gòu)、離散數(shù)學(xué)、數(shù)據(jù)庫原理、操作系統(tǒng)原理、計(jì)算機(jī)組成原理、人工智能、編譯原理、算法設(shè)計(jì)與分析。>大一上學(xué)期:C語言基礎(chǔ)語法必須全部學(xué)會(huì),提前完成C語言課程設(shè)計(jì)。簡(jiǎn)單數(shù)學(xué)題:求最大公約數(shù)、篩法求素?cái)?shù)、康托展開、同余定理、次方求模等。計(jì)算機(jī)課初步:三角形面積,三點(diǎn)順序等等。學(xué)會(huì)計(jì)算簡(jiǎn)單程序的時(shí)間復(fù)雜度和空間復(fù)雜度。二分查找、貪心算法經(jīng)典算法。簡(jiǎn)單的排序算法:冒泡排序法、插入排序法。高等數(shù)學(xué)。操作系統(tǒng)應(yīng)用:DOS命令,學(xué)會(huì)Windows系統(tǒng)的一些小知識(shí),學(xué)會(huì)編輯注冊(cè)表,學(xué)會(huì)使用組策略管理器(gpedit.msc)管理組策略等。>大一下學(xué)期:掌握C++部分語法,如引用類型、函數(shù)重載等,基本明白什么是類。學(xué)會(huì)使用棧和隊(duì)列等線性結(jié)構(gòu)。掌握BFS和DFS以及樹的前序、中序、后序遍歷。學(xué)會(huì)分治策略。掌握排序算法:選擇排序、歸并排序、快速排序、計(jì)數(shù)、基數(shù)排序等等。動(dòng)態(tài)規(guī)劃:最大子串和、最長(zhǎng)公共子序列、最長(zhǎng)單調(diào)遞增子序列、01背包、完全背包等。數(shù)論:擴(kuò)展歐幾里德算法、求逆元、同余方程、中國剩余定理。博弈論:博弈問題與SG函數(shù)的定義、多個(gè)博弈問題SG值的合并。圖論:圖的存儲(chǔ)、歐拉回路的判定、單源最短路Bellman-Ford算法及Dijkstra算法、最小生成樹Kruskal算法及Prim算法。學(xué)會(huì)使用C語言進(jìn)行網(wǎng)絡(luò)編程與多線程編程。高等數(shù)學(xué)、線性代數(shù):做幾道“矩陣運(yùn)算”分類下的題目。學(xué)習(xí)matlab,如果想?yún)⒓訑?shù)學(xué)建模大賽,需要學(xué)這個(gè)軟件。>大一假期:掌握C++語法,并熟練使用STL(重要)。試著實(shí)現(xiàn)STL的一些基本容器和函數(shù)、使自己基本能看懂STL源碼。數(shù)據(jù)結(jié)構(gòu):字典樹、并查集、樹狀數(shù)組、簡(jiǎn)單線段樹。圖論:使用優(yōu)先隊(duì)列優(yōu)化Dijkstra算法及Prim算法,單源最短路徑之SPFA,差分約束系統(tǒng),多源多點(diǎn)最短路徑之FloydWarshall算法,求歐拉回路(圈套圈算法)。拓?fù)渑判颍簭?fù)雜BFS和DFS搜索、復(fù)雜模擬題訓(xùn)練。動(dòng)態(tài)規(guī)劃:多重背包、分組背包、依賴背包等各種背包問題(參見背包九講)。計(jì)算幾何:判斷點(diǎn)是否在線段上、線段相交、圓與矩形的關(guān)系、點(diǎn)是否在多邊形內(nèi)、點(diǎn)到線段的最近點(diǎn)、多邊形面積、求多邊形重心、求凸包、點(diǎn)在任意多邊形內(nèi)外的判定。學(xué)習(xí)使用C/C++連接數(shù)據(jù)庫、學(xué)習(xí)一種C++的開發(fā)框架來編寫一些窗體程序(如MFC、Qt)。?大二全年:熟練掌握數(shù)據(jù)結(jié)構(gòu):?jiǎn)握{(diào)隊(duì)列、堆、并查集、樹狀數(shù)組、哈希表、線段樹、LCA與RMQ的轉(zhuǎn)化、后綴樹、字典樹、KMP算法、AC自動(dòng)機(jī)理論與實(shí)現(xiàn)等等。圖論一:強(qiáng)連通分量、雙連通分量、割點(diǎn)、橋、強(qiáng)連通分量和雙連通分量縮點(diǎn)、二分圖匹配(二分圖最大匹配、最小點(diǎn)集覆蓋、最小路徑覆蓋、二分圖最優(yōu)匹配、二分圖多重匹配)、網(wǎng)絡(luò)流(最大流的基本SAP、最大流的ISAP/Dinic等高效算法、最小費(fèi)用最大流、最大流最小割定理)等。動(dòng)態(tài)規(guī)劃:斜率優(yōu)化、四邊形優(yōu)化動(dòng)態(tài)規(guī)劃、樹形動(dòng)態(tài)規(guī)劃、狀態(tài)壓縮動(dòng)態(tài)規(guī)劃,多做動(dòng)態(tài)規(guī)劃難題,訓(xùn)練思維,向動(dòng)態(tài)規(guī)劃更高級(jí)進(jìn)階。數(shù)論和組合數(shù)學(xué):高斯消元法、積性函數(shù)的應(yīng)用、歐拉定理、費(fèi)馬小定理、威爾遜定理、群論基礎(chǔ)、Polya定理與計(jì)數(shù)問題、Catalan數(shù)。計(jì)算幾何:多邊形間并踵點(diǎn)對(duì)、凸多邊形間對(duì)踵點(diǎn)對(duì)、四邊形剖分、三角剖分、凸多邊形最小周長(zhǎng)外接矩形、凸多邊形最小面積外接矩形、凸多邊形間最小距離、凸多邊形直徑、凸多邊形的寬度等各種旋轉(zhuǎn)卡殼相關(guān)算法、最小覆蓋圓、定圓最大點(diǎn)集覆蓋、平面上最近點(diǎn)對(duì)、三維計(jì)算幾何算法。圖論二:網(wǎng)路流的各種構(gòu)圖訓(xùn)練(重要)、最小割與最小點(diǎn)權(quán)覆蓋等的關(guān)系、次小生成樹、第k短路、最小比率生成樹等。學(xué)好專業(yè)課知識(shí):理解數(shù)據(jù)庫原理、學(xué)會(huì)SQL語句、學(xué)會(huì)使用觸發(fā)器、學(xué)好計(jì)算機(jī)組成原理。>大二假期:自學(xué)完離散數(shù)學(xué)。自學(xué)概率論部分章節(jié)。自學(xué)操作系統(tǒng)部分章節(jié)。?大三以后:選擇自己感興趣的方向進(jìn)行研究,參加ACM-ICPC競(jìng)賽的隊(duì)員,需要全面學(xué)習(xí)和集訓(xùn)。>課程推薦:必學(xué)課程:C/C++/JAVA、數(shù)據(jù)結(jié)構(gòu)、算法設(shè)計(jì)與分析、離散數(shù)學(xué)、線性代數(shù)、概率論、操作系統(tǒng)、網(wǎng)絡(luò)原理、編譯原理。>書籍推薦《C++Primer中文版》《C++編程思想》《算法競(jìng)賽入門經(jīng)典》《算法競(jìng)賽入門經(jīng)典:訓(xùn)練指南》《趣學(xué)算

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論