日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

今天又看到的Acm指南

發(fā)布時(shí)間:2025/3/18 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 今天又看到的Acm指南 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
大一上學(xué)期:
必學(xué):
2. 簡單數(shù)學(xué)題(推薦“數(shù)學(xué)”分類20道以上)
需要掌握以下基本算法:
a) 歐幾里德算法求最大公約數(shù)
b) 篩法求素?cái)?shù)
c) 康托展開
d) 逆康托展開
e) 同余定理
f) 次方求模
3. 計(jì)算幾何初步
a) 三角形面積
b) 三點(diǎn)順序
4. 學(xué)會(huì)簡單計(jì)算程序的時(shí)間復(fù)雜度與空間復(fù)雜度
5. 二分查找法
6. 簡單的排序算法
a) 冒泡排序法
b) 插入排序法
7. 貪心算法經(jīng)典題目
8. 高等數(shù)學(xué)
以下為選修:
9. 學(xué)會(huì)使用簡單的DOS命令(較重要)
a) color/dir/copy/shutdown/mkdir(md)/rmdir(rd)/attrib/cd/
b) 知道什么是絕對路徑與相對路徑
c) 學(xué)會(huì)使用C語言調(diào)用DOS命令
d) 學(xué)會(huì)在命令提示符下調(diào)用你自己用C語言編寫的程序,并使用命令行參數(shù)給自己的程序傳參(比如自己制作一個(gè)copyfile.exe實(shí)現(xiàn)與copy命令基本功能一致的功能)
e) 學(xué)會(huì)編寫bat批處理文件
10. 學(xué)會(huì)Windows系統(tǒng)的一些小知識(shí),如設(shè)置隱藏文件,autoRun.inf的設(shè)置等。
11. 學(xué)會(huì)編輯注冊表(包括使用注冊表編輯器regedit和使用DOS命令編輯注冊表)
12. 學(xué)會(huì)使用組策略管理器管理(gpedit.msc)組策略。
大一下學(xué)期:
1. 掌握C++部分語法,如引用類型,函數(shù)重載等,基本明白什么是類。
2. 學(xué)會(huì)BFS與DFS
a) 迷宮求解(最少步數(shù))
b) 水池?cái)?shù)目(NYOJ27)
c) 圖像有用區(qū)域(NYOJ92)
d) 樹的前序中序后序遍歷
3. 動(dòng)態(tài)規(guī)劃(15題以上),要學(xué)會(huì)使用循環(huán)的方法寫動(dòng)態(tài)規(guī)劃,同時(shí)也要學(xué)會(huì)使用記憶化搜索的方法。
a) 最大子串和
b) 最長公共子序列
c) 最長單調(diào)遞增子序列(O(n)與O(n log n)算法都需要掌握)
d) 01背包
e) RMQ算法
4. 學(xué)會(huì)分析與計(jì)算復(fù)雜程序的時(shí)間復(fù)雜度
5. 學(xué)會(huì)使用棧與隊(duì)列等線性存儲(chǔ)結(jié)構(gòu)
6. 學(xué)會(huì)分治策略
7. 排序算法
a) 歸并排序
b) 快速排序
c) 計(jì)數(shù)排序
8. 數(shù)論
a) 擴(kuò)展歐幾里德算法
b) 求逆元
c) 同余方程
d) 中國剩余定理
9. 博弈論
a) 博弈問題與SG函數(shù)的定義
b) 多個(gè)博弈問題SG值的合并
10. 圖論:
a) 圖的鄰接矩陣與鄰接表兩種常見存儲(chǔ)方式
b) 歐拉路的判定
c) 單最短路bellman-ford算法dijkstra算法。
d) 最小生成樹的kruskal算法與prim算法。
11. 學(xué)會(huì)使用C語言進(jìn)行網(wǎng)絡(luò)編程與多線程編程
12. 高等數(shù)學(xué)
13. 線性代數(shù)
a) 明確線性代數(shù)的重要性,首先是課本必須學(xué)好
b) 編寫一個(gè)Matrix類,進(jìn)行矩陣的各種操作,并求編寫程序解線性方程組。
c) 推薦做一兩道“矩陣運(yùn)算”分類下的題目。
以下為選修,隨便選一兩個(gè)學(xué)學(xué)即可:
14. (較重要)使用C語言或C++編寫簡單程序來調(diào)用一些簡單的windows API,或者在linux下進(jìn)行l(wèi)inux系統(tǒng)調(diào)用,其目的是明白什么是API(應(yīng)用程序接口)。
15. 網(wǎng)頁設(shè)計(jì)
a) 學(xué)習(xí)靜態(tài)網(wǎng)頁技術(shù)(html+css+javascript)
b) 較具有藝術(shù)細(xì)胞的可以試試Photoshop
c) php或其它動(dòng)態(tài)網(wǎng)頁技術(shù)
16. 學(xué)習(xí)matlab,如果想?yún)⒓訑?shù)學(xué)建模大賽的話,需要學(xué)這個(gè)軟件。
大一假期(如果留校集訓(xùn))
1. 掌握C++語法,并熟練使用STL
2. 試著實(shí)現(xiàn)STL的一些基本容器和函數(shù),使自己基本能看懂STL源碼
3. 圖論
a) 使用優(yōu)先隊(duì)列優(yōu)化Dijkstra和Prim
b) 單源最短路徑之SPFA
c) 差分約束系統(tǒng)
d) 多源多點(diǎn)最短路徑之FloydWarshall算法
e) 求歐拉路(圈套圈算法)
4. 進(jìn)行復(fù)雜模擬題訓(xùn)練
5. 拓?fù)渑判?br /> 6. 動(dòng)態(tài)規(guī)劃進(jìn)階
a) 完全背包、多重背包等各種背包問題(參見背包九講)
b) POJ上完成一定數(shù)目的動(dòng)態(tài)規(guī)劃題目
c) 狀態(tài)壓縮動(dòng)態(tài)規(guī)劃
d) 樹形動(dòng)態(tài)規(guī)劃
7. 搜索
a) 回溯法熟練應(yīng)用
b) 復(fù)雜的搜索題目練習(xí)
c) 雙向廣度優(yōu)先搜索
d) 啟發(fā)式搜索(包括A*算法,如八數(shù)碼問題)
8. 計(jì)算幾何
a) 判斷點(diǎn)是否在線段上
b) 判斷線段相交
c) 判斷矩形是否包含點(diǎn)
d) 判斷圓與矩形關(guān)系
e) 判斷點(diǎn)是否在多邊形內(nèi)
f) 判斷點(diǎn)到線段的最近點(diǎn)
g) 計(jì)算兩個(gè)圓的公切線
h) 求矩形的并的面積
i) 求多邊形面積
j) 求多邊形重心
k) 求凸包
選修
9. 可以學(xué)習(xí)一種C++的開發(fā)框架來編寫一些窗體程序玩玩(如MFC,Qt等)。
10. 學(xué)習(xí)使用C或C++連接數(shù)據(jù)庫。
大二一整年:
1. 數(shù)據(jù)結(jié)構(gòu)
a) 單調(diào)隊(duì)列
b) 堆
c) 并查集
d) 樹狀數(shù)組
e) 哈希表
f) 線段樹
g) 字典樹
2. 圖論
a) 強(qiáng)連通分量
b) 雙連通分量(求割點(diǎn),橋)
c) 強(qiáng)連通分量與雙連通分量縮點(diǎn)
d) LCA、LCA與RMQ的轉(zhuǎn)化
e) 二分圖匹配
i. 二分圖最大匹配
ii. 最小點(diǎn)集覆蓋
iii. 最小路徑覆蓋
iv. 二分圖最優(yōu)匹配
v. 二分圖多重匹配
f) 網(wǎng)絡(luò)流
i. 最大流的基本SAP
ii. 最大流的ISAP或者Dinic等高效算法(任一)
iii. 最小費(fèi)用最大流
iv. 最大流最小割定理
3. 動(dòng)態(tài)規(guī)劃多做題提高(10道難題以上)
4. 數(shù)論
a) 積性函數(shù)的應(yīng)用
b) 歐拉定理
c) 費(fèi)馬小定理
d) 威樂遜定理
5. 組合數(shù)學(xué)
a) 群論基礎(chǔ)
b) Polya定理與計(jì)數(shù)問題
c) Catalan數(shù)
6. 計(jì)算幾何
a) 各種旋轉(zhuǎn)卡殼相關(guān)算法
b) 三維計(jì)算幾何算法
7. 理解數(shù)據(jù)庫原理,學(xué)會(huì)SQL語句
8. 學(xué)好計(jì)算機(jī)組成原理
9. 學(xué)習(xí)Transact-SQL語言,學(xué)會(huì)使用觸發(fā)器,存儲(chǔ)過程,學(xué)會(huì)數(shù)據(jù)庫事務(wù)等。
10. 圖論二
a) 網(wǎng)絡(luò)流的各種構(gòu)圖訓(xùn)練(重要)
b) 最小割與最小點(diǎn)權(quán)覆蓋等的關(guān)系(詳見《最小割模型在信息學(xué)競賽中的應(yīng)用》一文)
c) 次小生成樹
d) 第k短路
e) 最小比率生成樹
11. 線性規(guī)劃
12. 動(dòng)態(tài)規(guī)劃更高級(jí)進(jìn)階
13. KMP算法
14. AC自動(dòng)機(jī)理論與實(shí)現(xiàn)
15. 博弈論之Alpha-beta剪枝
選修,有相關(guān)興趣的可以學(xué)一下:
16. 自學(xué)C#或Java做一個(gè)項(xiàng)目,比如C++/C#/Java考試系統(tǒng)之類的。
17. 先做一些小游戲玩玩,然后可以學(xué)一下DirectX或者OpenGL,或者可以試試XNA游戲框架。
18. 了解一下游戲引擎相關(guān)的知識(shí)
其中的寒假假期最好:
1. 自學(xué)完離散數(shù)學(xué)
2. 自學(xué)概率論的部分章節(jié)
3. 自學(xué)操作系統(tǒng)部分章節(jié)
大三、
1. 鞏固之前的知識(shí),進(jìn)行一遍大復(fù)習(xí)。
2. 一些如蟻群算法,遺傳算法,模擬退火算法等人工智能方面應(yīng)用較廣的隨機(jī)性算法。
3. 把編譯原理上學(xué)的東西應(yīng)用到編程中:如DFA,NFA,還有語法分析的各種方法等。
當(dāng)你按上面那些一步步走過來時(shí)你已經(jīng)是牛人了,后面要學(xué)的東西,就是由牛人自己來發(fā)掘的了。

總結(jié)

以上是生活随笔為你收集整理的今天又看到的Acm指南的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。