概念
信息學奧林匹克(Olympiad in Informatics)簡稱IOI是聯合國教科文組織支持的學科競賽之一。我國已經建立起一組相對完善的選拔機制,近年來選手全部獲得金牌。
ACM國際大學生程式設計競賽(英文全稱:ACM International Collegiate ProgrammingContest(ACM-ICPC或ICPC)是由美國計算機協會(ACM)主辦的,一項旨在展示大學生創新能力、團隊精神和在壓力下編寫程式、分析和解決問題能力的年度競賽。經過近30多年的發展,ACM國際大學生程式設計競賽已經發展成為最具影響力的大學生計算機競賽。
NOI(全國青少年信息學奧林匹克競賽)
NOIP(全國青少年信息學奧林匹克聯賽/分區聯賽)在每年十一月的第二個星期六舉行
WC(Winter Camp) 全國信息學冬令營。
CTSC(Chinese Team Selection Contest) IOI中國代表隊選拔賽 暨全國信息學精英賽
APIO(亞洲與太平洋地區信息學奧林匹克競賽(Asia-Pacific Informatics Olympiad)
POI(Polish Olympiad in Informatics)波蘭高中信息學編程競賽,在世界上影響很大。
CEOI中歐信息學競賽(Central European Olympiad in Informatics),中歐的高中信息學編程競賽,在世界上影響很大。
BOI 波羅的海國家信息學奧林匹克競賽
線上題庫
RQNOJ
POJ
SPOJ
USACO
TYVJ
BZOJ
HDU
洛谷
CodeVS
知識能力體系
數學離散數學集合論 關係 代數系統 數理邏輯 圖論
組合數學排列組合 母函式 群論 遞推與遞歸 莫比烏斯反演
數學線性規劃 動態 整數
高等數學向量 行列式與矩陣 微積分初步
機率統計
初等數論素數 整數理論 同餘與模線性方程
計算幾何
數據結構存儲結構線性表
(一級結構)靜態:數組 棧 佇列 廣義表 字元串
動態:指針鍊表 動態數組
樹
(二級結構)表示法(靜態、動態) 二叉樹 森林
圖
(三級結構)表示法(矩陣、鄰接表、三元組)
特殊結構散列表(HASH表) 並查集 線段樹 後綴樹 哈夫曼樹與哈夫曼編碼 地址表Bit圖 滾動數組 棋盤圖 邊頂置換圖 二分點圖(網路流)
常用方法遍歷樹 圖 前/中/後序優先
轉化拓撲排序(三級結構轉一級結構) 最小生成樹 最小樹形圖(三級結構轉二級結構) 逆遍歷
壓縮路徑樹的線索化
壓縮存儲
查找線性直接 折半Fab
樹形二叉查找樹 平衡二叉樹B+樹B-樹 線索二叉樹索引表
排序插入排序直接排序、折半排序、2-路排序
交換排序冒泡排序 快速排序 歸併排序
堆排序
基數排序鏈式基數排序 桶排序
代碼素養代碼的編寫速度和準確性 誤碼率
算法實現
算法最佳化
調試 查錯 測試
習慣變數名 注釋 縮進 模組化
基本算法數學高精度計算(模擬計算)
表達式處理括弧 前/中/後綴表達式 表達式樹
排列組合求值 嵌套控制
高斯消元法
快速傅立葉變換(FFT)
篩選素數素數表
分數處理
基本操作實現大量數據賦值與移動Fillchar fillword move等函式
處理實數比較大小 高精度
字元串處理基本函式KMP算法
圖論
(顯示圖搜尋)路徑問題
(邊集)連通性測試傳遞閉包算法 極大強連通子圖 最小點基
最短路問題標號法 第k小路 減半最短路Dijkstra算法floyd算法bellman-ford算法Warshall算法
特殊路徑歐拉路及迴路 哈密爾頓路及迴路
圖的中心和重心
生成樹Kruskal算法Prim算法
集
(頂點集)覆蓋集
獨立集
支配集
割頂和塊
網路流容量有上下界的網路最大/ 小流
容量有上下界的網路最小費用最大/ 小流
頂容量網路最大流
供求約束可行流
二分圖匹配匈牙利算法
關鍵路徑
搜尋
(隱式圖搜尋)深度優先搜尋
(回溯法)剪枝最佳化
預處理
記憶化搜尋
可變下界的深度優先搜尋
隨機化搜尋
廣度優先搜尋雙向廣搜*多向廣搜
啟發式搜尋(A算法)
分枝定界
多階段決策貪心算法
背包動態規劃
棋盤動態規劃
劃分動態規劃
區間動態規劃
樹形動態規劃
狀態壓縮型動態規劃
其他構造法窮舉
模擬