1. 程式人生 > >PAT考試大綱

PAT考試大綱

乙級(Basic Level)

考生應具備以下基本能力:
1· 基本的C/C++的程式碼設計能力,以及相關開發環境的基本除錯技巧;
2· 理解並掌握最基本的資料儲存結構,即:陣列、連結串列;
3· 理解並熟練程式設計實現與基本資料結構相關的基礎演算法,包括遞迴、排序、查詢等;
4· 能夠分析演算法的時間複雜度、空間複雜度和演算法穩定性;
5· 具備問題抽象和建模的初步能力,並能夠用所學方法解決實際問題。

甲級(Advanced Level)

在達到乙級要求的基礎上,還要求:
1· 具有充分的英文閱讀理解能力;
2· 理解並掌握基礎資料結構,包括:線性表、樹、圖;
3· 理解並熟練程式設計實現經典高階演算法,包括雜湊對映、並查集、最短路徑、拓撲排序、關鍵路徑、貪心、深度優先搜尋、廣度優先搜尋、回溯剪枝等;
4· 具備較強的問題抽象和建模能力,能實現對複雜實際問題的模擬求解。

頂級(Top Level)

在達到甲級要求的基礎上,還要求:
1· 對高階、複雜資料結構掌握其用法並能夠熟練使用,如字尾陣列、樹狀陣列、線段樹、Treap、靜態KDTree等;
2· 能夠利用經典演算法思想解決較難的演算法問題,如動態規劃、計算幾何、圖論高階應用(包括最大流/最小割,強連通分支、最近公共祖先、最小生成樹、尤拉序列)等,並靈活運用;
3· 能夠解決複雜的模擬問題,編寫並除錯程式碼量較大的程式;
4· 具有縝密的科學思維,考慮問題周全,能夠正確應對複雜問題的邊界情況。