演算法略講板子奇怪的吐槽其他1.如果對語言還不是很熟悉,請先多做一些入門題。不僅是為了掌握語言,更是為了熟悉程式設計思維。同時刷水題不要上癮,只追求過題數量並不能真正提高水平。水題150~200左右應該開始比較系統的演算法學習。
2.學習演算法最好的方式是了解思想後自己嘗試實現,再去閱讀別人的板子尋找別人**的優點。列印幾百頁板子甚至背熟都並沒有什麼用。
3.acm是團隊競賽,所以發展自己擅長的方向很重要(dp、數論、圖論、計算幾何、資料結構等),但擅長debug的隊友顯然更受歡迎。
4.日常刷題盡量計時,不要鑽牛角尖,遠超自己能力範圍的演算法沒必要死磕。你花一兩個月完成的**不一定會(甚至一定不會)考到類似的題,即使考到,你也不一定能調出來。
5.前人的經驗不一定要聽,方法很多,思路很廣,不走尋常路不是壞事。但前人的教訓最好吸取,acmer的競賽生涯不長,掉進坑里還是挺疼的。
6.acm競賽是一種很難的東西,事實上,它只適合少部分人,而且知識更新換代的速度非常快。如果想取得好的成績需要付出很大的精力。注意是付出很大精力,並不僅僅是時間。
7.很多時候非技術原因才是競賽失利的主要原因,考試策略和調整心態非常重要。
另外,以下知識列表以知識點方向為分類標準,並不是推薦學習順序。
演算法詳解與模板待新增。
基礎知識模擬排序
遞推遞迴搜尋
貪心 二分
圖樹鄰接矩陣存圖與遍歷
一筆畫問題
哈密頓迴路問題
差分約束系統
生成樹演算法
最短路演算法
lca(最近公共祖先)演算法
強連通分量(縮點)
二分圖演算法
仙人掌與圓方樹
線性dp揹包dp
區間dp
樹形dp
數字dp
概率期望dp
狀態壓縮dp
dp優化
棧佇列堆 並查集
線段樹樹狀陣列
st表塊狀鍊錶
splay(伸展樹)
treap
範浩強treap
替罪羊樹
樹套樹lct(link-cut tree)
edmonds-karp最大流演算法dinic最大流演算法
isap最大流演算法
hlpp最高標號預流推進演算法
zkw最小費用最大流
primal-dual原始對偶演算法
上下界最大流
高精kmp匹配演算法
manacher演算法
字串hash
trie樹
字尾陣列
ac自動機
字尾自動機
歐幾里得演算法逆元快速冪篩法求積性函式
中國剩餘定理
bsgs
整除分塊
pollard-rho演算法
基礎表示常用函式
多邊形凸包
半平面交
旋轉卡殼
最小圓覆蓋
三維計算幾何
多維立體幾何
acm從入門到放棄 day6
dp dynamic programming 前人的總結,個人感覺是不錯的,點一點試試 看了感覺雲裡霧裡的,就想著去做個題試試,所以 做了一下下面這個題 題目背景 uim神犇拿到了uoi的ra 鐳牌 後,立刻拉著 小a到了一家 餐館,很低端的那種。uim指著牆上的價目表 太低階了沒有選單 說 隨便點...
Redis從入門到入門
2安裝1.1支援的儲存結構 remote dictionary server 以字典儲存資料,允許其他應用通過tcp協議訪問字典內容。支援的鍵值型別 優點 redis的字典儲存方式和多重鍵值儲存方式,使得程式設計師可以直接將程式中的資料對映到redis中,資料在redis中的儲存方式和其在程式中的儲...
Azure Blob Storage從入門到精通
今天推薦的是乙個系列文章,讓讀者閱讀完成後可以對azure blob storage的開發有乙個全面的了解,可謂是從入門到精通。azure在最初的版本裡面就提供了非結構化資料的儲存服務,也即blob storage。其是azure中非常重要和基礎的一項服務,支撐著很多其他服務的執行 比如虛擬機器等 ...