❶ 《挑戰編程技能57道程序員功力測試題》pdf下載在線閱讀,求百度網盤雲資源
《挑戰編程技能57道程序員功力測試題》BrianP.Hogan電子書網盤下載免費在線閱讀
鏈接: https://pan..com/s/1NDJgpK5foeux3FcGWRBq6A
書名:挑戰編程技能 57道程序員功力測試題
作者名:BrianP.Hogan
出版社:人民郵電出版社
出版年份:2017年01月
內容介紹:
新手程序員在具備了理論基礎後,面對實際項目時往往不知道如何解決問題; 有經驗的程序員在學習了一門新語言後,也會有很多不知道如何使用的特性。針對 程序員的這一普遍困惑,知名軟體工程師Brian P. Hogan 在這本書中總結了57 道練習 題,幫助他們錘煉技能。這些練習題均取自實踐,難度會逐漸增加,使得編程訓練 充滿挑戰又樂趣多多。
❷ 挑戰程序設計競賽(第2版)的目錄
《挑戰程序設計競賽(第2版)》
第1章蓄勢待發——准備篇1 1.1 何謂程序設計競賽2 1.2 最負盛名的程序設計競賽5 1.2.1 世界規模的大賽——google code jam(gcj)5 1.2.2 向高排名看齊!——topcoder5 1.2.3 歷史最悠久的競賽—— acm-icpc6 1.2.4 面向中學生的信息學奧林匹克競賽——joi-ioi6 1.2.5 通過網路自動評測——online judge(oj)6 1.3 本書的使用方法7 1.3.1 本書所涉及的內容7 1.3.2 所用的編程語言7 1.3.3 題目描述的處理7 1.3.4 程序結構7 1.3.5 練習題8 1.3.6 讀透本書後更上一層樓的練習方法8 1.4 如何提交解答9 1.4.1 poj的提交方法9 1.4.2 gcj的提交方法11 1.5 以高效的演算法為目標15
.1.5.1 什麼是復雜度15 1.5.2 關於運行時間15 1.6 輕松熱身16 1.6.1 先從簡單題開始16 1.6.2 poj的題目ants18 1.6.3 難度增加的抽簽問題20 第2章初出茅廬——初級篇25 2.1 最基礎的「窮竭搜索」26 2.1.1 遞歸函數26 2.1.2 棧27 2.1.3 隊列28 2.1.4 深度優先搜索29 2.1.5 寬度優先搜索33 2.1.6 特殊狀態的枚舉37 2.1.7 剪枝38 2.2 一往直前!貪心法39 2.2.1 硬幣問題39 2.2.2 區間問題40 2.2.3 字典序最小問題43 2.2.4 其他例題45 2.3 記錄結果再利用的「動態規劃」51 2.3.1 記憶化搜索與動態規劃51 2.3.2 進一步探討遞推關系57 2.3.3 有關計數問題的dp66 2.4 加工並存儲數據的數據結構70 2.4.1 樹和二叉樹70 2.4.2 優先隊列和堆71 2.4.3 二叉搜索樹77 2.4.4 並查集84 2.5 它們其實都是「圖」91 2.5.1 圖是什麼91 2.5.2 圖的表示94 2.5.3 圖的搜索97 2.5.4 最短路問題99 2.5.5 最小生成樹105 2.5.6 應用問題107 2.6 數學問題的解題竅門113 2.6.1 輾轉相除法113 2.6.2 有關素數的基礎演算法117 2.6.3 模運算121 2.6.4 快速冪運算122 2.7 一起來挑戰gcj的題目(1)125 2.7.1 minimum scalar proct125 2.7.2 crazy rows127 2.7.3 bribe the prisoners129 2.7.4 millionaire132 第3章出類拔萃——中級篇137 3.1 不光是查找值!「二分搜索」138 3.1.1 從有序數組中查找某個值138 3.1.2 假定一個解並判斷是否可行140 3.1.3 最大化最小值142 3.1.4 最大化平均值143 3.2 常用技巧精選(一)146 3.2.1 尺取法146 3.2.2 反轉(開關問題)150 3.2.3 彈性碰撞158 3.2.4 折半枚舉(雙向搜索)160 3.2.5 坐標離散化164 3.3 活用各種數據結構167 3.3.1 線段樹167 3.3.2 binary indexed tree174 3.3.3 分桶法和平方分割183 3.4 熟練掌握動態規劃191 3.4.1 狀態壓縮dp191 3.4.2 矩陣的冪199 3.4.3 利用數據結構高效求解206 3.5 藉助水流解決問題的網路流209 3.5.1 最大流209 3.5.2 最小割212 3.5.3 二分圖匹配217 3.5.4 一般圖匹配220 3.5.5 匹配、邊覆蓋、獨立集和頂點覆蓋221 3.5.6 最小費用流222 3.5.7 應用問題228 3.6 與平面和空間打交道的計算幾何250 3.6.1 計算幾何基礎250 3.6.2 極限情況255 3.6.3 平面掃描258 3.6.4 凸包260 3.6.5 數值積分263 3.7 一起來挑戰gcj的題目(2)267 3.7.1 numbers267 3.7.2 no cheating269 3.7.3 stock charts271 3.7.4 watering plants273 3.7.5 number sets278 3.7.6 wi-fi towers280 第4章登峰造極——高級篇285 4.1 更加復雜的數學問題286 4.1.1 矩陣286 4.1.2 模運算的世界291 4.1.3 計數295 4.1.4 具有對稱性的計數300 4.2 找出遊戲的必勝策略305 4.2.1 游戲與必勝策略305 4.2.2 nim311 4.2.3 grundy數315 4.3 成為圖論大師之路320 4.3.1 強連通分量分解320 4.3.2 2-sat324 4.3.3 lca328 4.4 常用技巧精選(二)335 4.4.1 棧的運用335 4.4.2 雙端隊列的運用337 4.4.3 倍增法345 4.5 開動腦筋智慧搜索350 4.5.1 剪枝350 4.5.2 a*與ida*356 4.6 劃分、解決、合並:分治法359 4.6.1 數列上的分治法359 4.6.2 樹上的分治法360 4.6.3 平面上的分治法364 4.7 華麗地處理字元串368 4.7.1 字元串上的動態規劃演算法368 4.7.2 字元串匹配373 4.7.3 後綴數組378 4.8 一起來挑戰gcj的題目(3)387 4.8.1 mine layer387 4.8.2 year of more code jam392 4.8.3 football team395 4.8.4 endless knight399 4.8.5 the year of code jam403 本書中未涉及的拓展主題408 書中例題列表411 參考文獻413
❸ 挑戰程序設計競賽(第2版)的圖書前言
如今,形形色色的程序設計競賽層出不窮,聽說過Google Code Jam、TopCoder、ACM-ICPC的讀者恐怕不在少數。本書要介紹的正是這類以在規定時間內、又快又准地解決盡可能多的題目為目標的程序設計競賽。 程序設計競賽內涵豐富,即便是經驗老道的程序員,要想在比賽中取得好成績也絕非易事。要在程序設計競賽中取勝,不僅需要運用靈活的想像和豐富的知識得出正確的演算法,還需要一氣呵成地實現並調試通過。 另一方面,程序設計競賽對新手而言亦非遙不可及。為了讓更多的參賽選手體會到比賽的樂趣,大多數比賽都會准備若乾麵向初學者的題目。另外,即便未能在比賽中取得好成績,通過比賽,也能夠使自己的能力得到有效的鍛煉。最重要的是,大家能夠享受到激烈的比賽帶來的樂趣。 本書的作者們參加過眾多程序設計競賽,在平時的練習和學習中,也獲得了各種各樣的知識與技巧,本書將這些知識技巧總結成冊,主要介紹演算法及其在相關問題中的應用。本書依照由易及難的順序對問題進行講解,章節的編排也參考了主題的難易程度及其相互的聯系,內容較多的主題則按難易程度劃分為多個子主題分別介紹。各個主題由演算法介紹和例題講解穿插而成。 只要是具有編程基礎知識的讀者,均適合閱讀本書。書中的源代碼均用C++實現,不過只用到了其基本功能,所以即便讀者不熟悉C++也不影響閱讀。 關於再版 令人驚喜的是,本書的第1版受到了廣大讀者的高度評價,在此表示感謝。特別是一些並不熱衷於程序設計競賽的讀者也購買了本書。這是因為通過本書不僅可以學到演算法,更能學到其設計和運用的思想。這正是本書劃時代的亮點。 本書第2版追加了計算幾何、搜索減枝、分治法和字元串相關演算法4個主題。此外還追加了方便讀者加深理解的練習題,並為學有餘力的讀者列出了書中未涉及的拓展主題,進一步豐富了本書內容。
❹ 《挑戰程序設計競賽2演算法和數據結構》pdf下載在線閱讀全文,求百度網盤雲資源
《挑戰程序設計競賽2 演算法和數據結構》([日]渡部有隆)電子書網盤下載免費在線閱讀
鏈接: https://pan..com/s/1B5oEwukMNtPgrWcmM05upQ
書名:挑戰程序設計競賽2 演算法和數據結構
作者:[日]渡部有隆
譯者:支鵬浩
豆瓣評分:8.3
出版社:人民郵電出版社
出版年份:2016-9-1
頁數:404
內容簡介:
本書分為准備篇、基礎篇和應用篇三大部分,藉助在線評測系統Aizu Online Judge以及大量例題,詳細講解了演算法與復雜度、初等和高等排序、搜索、遞歸和分治法、動態規劃法、二叉搜索樹、堆、圖、計算幾何學、數論等與程序設計競賽相關的演算法和數據結構,既可以作為挑戰程序設計競賽的參考書,也可以用來引導初學者系統學習演算法和數據結構的基礎知識。本書適合所有程序設計人員、程序設計競賽愛好者以及高校計算機專業師生閱讀。
作者簡介:
渡部有隆(作者)
出生於1979年,計算機理工學博士。會津大學計算機理工學部信息系統學部門副教授。專業領域為可視化編程語言。AIZU ONLINE JUDGE開發者。
Ozy(審校)
本名岡田佑一,出生於日本大阪的短碼高手。他花費相當長的時間提升短碼編程技術,進而將其發展成一種技能,曾獲得程序設計大賽的冠軍。他開辦過程序設計方面的培訓班,目前致力於數學教育和程序設計師的培養工作。曾著有《短碼之美:變成達人的心得技法》(人民郵電出版社)。
秋葉拓哉(審校)
2011年考入東京大學研究生院。以iwi的昵稱活躍在程序設計競賽中。TopCoder評級好成績為世界第四(2013年)。《挑戰程序設計競賽(第2版)》(人民郵電出版社)作者之一。
❺ ACM國際大學生程序設計競賽:知識與入門
ACM國際大學生程序設計競賽:知識與入門.pdf
鏈接:
https://pan..com/s/19OY2FJUkk4RhW5WTsPkwfQ
《ACM國際大學生程序設計競賽:知識與入門》適用於參加ACM國際大學生程序設計競賽的本科生和研究生,對參加青少年信息學奧林匹克競賽的中學生也很有指導價值。