●第1章 算法入門
1.1 接觸算法
1.2 算法的時間
1.3 算法的存儲空間
1.4 算法實踐基礎
1.5 算法實現技巧
1.6 實驗題
第2章 美麗的數學
2.1 笛卡爾的心
2.2 蒙特卡洛法求Pi
2.3 優選公約數和最小公倍數
2.4 閏年問題
2.5 求三維空間三角形面積
2.6 實驗題
第3章 數據結構
3.1 數據結構基礎
3.2 隊列
3.2.1 構建隊列
3.2.2 隊列應用案例1:FIFO財務核算
3.2.3 隊列應用案例2:搶椅子遊戲
3.3 棧
3.3.1 構建棧
3.3.2 棧應用案例:判斷代碼格式
3.4 鏈表
3.4.1 構建鏈表
3.4.2 鏈表應用案例:老鷹抓小雞遊戲
3.5 數組
3.5.1 構建數組
3.5.2 數組應用案例:二值圖像處理
*3.6 樹
3.6.1 樹的基本概念
3.6.2 構建二叉樹
3.6.3 二叉樹遍歷算法
*3.7 圖
3.7.1 圖的基本概念
3.7.2 鄰接矩陣實現
3.7.3 鄰接表實現
3.7.4 圖的遍歷
3.8 實驗題
第4章 排序算法
4.1 冒泡排序
4.2 選擇排序
4.3 插入排序
4.4 希爾排序
*4.5 快速排序
*4.6 歸並排序
4.7 實驗題
第5章 檢索算法
5.1 線性查找
5.2 二分查找
5.3 插值查找
5.4 斐波那契查找
5.5 分塊查找
5.6 哈希查找
*5.7 回溯查找
5.8 實驗題
第6章 字符串相關算法
6.1 暴力搜索算法
*6.2 BM算法
*6.3 Sunday算法
*6.4 字符串公式逆波蘭算法
6.5 回文字符串算法
6.6 實驗題
第7章 遞歸算法
7.1 理解遞歸
7.2 多調用遞歸
7.3 同時多調用——斐波那契數列
7.4 斐波那契數列遞歸算法改進
*7.5 漢諾塔
*7.6 遞歸求全排列
7.7 實驗題
第8章 貪心算法
8.1 汽車加油
8.2 背包問題
8.3 最小生成樹
8.3.1 Kruskal算法
8.3.2 Prim算法
*8.4 哈夫曼樹
8.5 貨幣選擇問題
8.6 實驗題
第19章 動態規劃
9.1 動態規劃基本思想
9.2 線性動態規劃
**9.3 區域動態規劃
*9.4 樹形動態規劃
9.5 背包動態規劃
9.6 實驗題
第10章 大數據相關算法
10.1 歸一化算法
10.1.1 最小-優選標準化
10.1.2 Z-Score標準化
1O.1.3 小數定標法
10.2 哈希算法
10.2.1 一般哈希算法
10.2.2 一致性哈希算法
10.3 歐幾裡得及擴展算法
10.3.1 歐幾裡得算法
10.3.2 歐幾裡得擴展算法
*10.4 RSA加密算法
10.4.1 蒙哥馬利冪模運算
10.4.2 RSA算法原理
10.4.3 RSA算法實現
*10.5 PageRank算法
10.6 實驗題
**第11章 機器學習算法
11.1 KNN算法
11.2 NBC算法
11.3 LR算法
11.3.1 線性回歸概念
11.3.線性回歸
11.4 K-Means算法
11.5 梯度下降算法
11.5.1 簡單梯度下降算法
11.5.2 批量梯度下降算法
11.5.3 隨機梯度下降算法
11.6 實驗題
第12章 遊戲相關算法
12.1 約瑟夫生者死者小遊戲
12.2 洗牌算法
12.2.1 Fisher-Yates Shuffle
12.2.2 Knuth-Durstenfeld Shuffle
12.2.3 Inside-Out Shuffle
12.3 24點遊戲
12.4 八皇後問題
12.5 填字遊戲
12.6 實驗題
附錄 Anaconda包簡明操作
1.1 Anaconda包的下載
1.2 Anaconda包的安裝
1.3 Spyder使用要點
1.4 Numpy使用要點
1.5 Matplotlib使用要點
參考文獻
後記
《算法之美——Python語言實現》基於Python語言繫統講述了算法基礎知識、數據結構和各種經典算法,包含傳統典型算法、競賽算法、大數據算法、人工智能算法、遊戲算法等,在講解經典算法的同時,盡量吸收近期新的算法成果,並體現實戰性。為了解決算法類圖書不容易被接受的問題,本書對算法理論的講解結合了83個具體的實例應用,實例講解遵循需求規則、算法思想、代碼實現和算法點評這一規律;算法思想基於各種圖示來演示算法的設計流程,使設計思路清晰明了;代碼實現中對關鍵代碼給予注釋,幫助讀者優選地理解算法程序設計的具體含義。本書每章均提供了配套的實驗習題及答案,以鞏固所學,增強實戰應用技能。另外,本書對部分章節配備了視頻講解,讀者可以使用手機掃碼來輕松學習。總之,本書設計體現了輕松易學的思想,優選地幫助讀者理解算法的思想精髓和實現算法的實戰應用過程。 本書講解通俗易懂、層層遞進,知識體繫完善、內等