Python算法圖解
何韜
買這商品的人也買了...
-
$650$507 -
$450$356 -
$403圖解深度學習與神經網絡:從張量到 TensorFlow 實現
-
$450$356 -
$450$356 -
$250數據結構與算法圖解
-
$500$390 -
$380$342 -
$400$316 -
$580$522 -
$335圖解機器學習 -- 算法原理與 Python 語言實現
-
$500$395 -
$1,830$1,739 -
$560$437 -
$450$356 -
$450$405 -
$403圖神經網絡:基礎與前沿
-
$507Kali Linux 2 網絡滲透測試實踐指南, 2/e
-
$403圖解人工智能
-
$600$540 -
$474$450 -
$450$356 -
$500$390 -
$2,384Powershell Cookbook: Your Complete Guide to Scripting the Ubiquitous Object-Based Shell (Paperback)
-
$1,636Powershell for Beginners: Learn Powershell 7 Through Hands-On Mini Games (Paperback)
相關主題
商品描述
本書是一部論述使用Python語言描述數據結構與算法的新形態圖書,採用圖解方式和Python語言 來描述各類算法的實現過程,講解通俗易懂,易於理解,切實做到深入淺出。同時,針對企業的用人需求本 書提供了豐富的面試題,具有很強的實戰性。 本書共分11章,包括數據結構的分類和基本運算、遞歸、棧和隊列、鏈表、數組、樹結構、堆結構、散列 表、字典樹、圖和排序算法。讀者使用時,學習順序未必全按書中章節安排,可以依照自己的需求,做適當 調整。 為 方便讀者學習,作者專門錄制了配套的微課視頻,並提供配套程序代碼,供讀者使用。 本書既適合有一定編程基礎的初學者,也適合想鞏固相關算法知識的軟件開發人員,同時也適合作為 各高校電腦專業“數據結構與算法”課程的教材。
作者簡介
何韜 現任TCL教育科技有限責任公司資深工程師。
曾就職於互愛(北京)、用友軟件、大唐電信、IBM等IT企業,主持及參與過多個大型IT產品和項目的開發,有豐富的IT產品設計和開發經驗。
目前致力於IT教育領域,努力把IT實戰開發經驗與教學有機結合起來,服務於IT產業人才培養。
目錄大綱
第1章數據結構的分類和基本運算
1.1數據的邏輯結構
1.2數據的存儲結構
1.3數據結構的基本運算
第2章遞歸
2.1遞歸調用
2.2遞歸方式打印九九乘法表
2.3舍罕王賞麥
2.4遞歸遍歷文件
2.5遞歸實現斐波那契數列
2.6循環實現斐波那契數列
2.7兔子繁殖問題
第3章棧和隊列
3.1棧結構
3.2用棧做十進制與二進制的轉換
3.3最小棧
3.4隊列
3.5兩個棧實現一個隊列
3.6以遞歸方式反轉一個棧
3.7遞歸加棧實現漢諾塔
第4章鍊錶
4.1鍊錶結構
4.2單向鍊錶
4.2.1單向鍊錶的追加和遍歷
4.2.2單向鍊錶的隨機訪問
4.2.3單向鍊錶的隨機插入
4.2.4單向鍊錶的隨機刪除
4.2.5從尾到頭打印單向鍊錶
4.2.6反轉一個單向鍊錶
4.2.7反轉單向鍊錶中索引n~m處節點
4.2.8合併多個鍊錶
4.2.9合併兩個有序鍊錶
4.2.10相交鍊錶
4.2.11判斷兩個鍊錶是否相交
4.2.12構造帶環的單向鍊錶
4.2.13判斷鍊表是否有環並找出環的閉合點
4.3單向循環鍊錶
4.3.1單向循環鍊錶的追加和遍歷
4.3.2約瑟夫環
4.4雙向鍊錶
4.4.1雙向鍊錶的追加和遍歷
4.4.2雙向鍊錶的隨機插入和刪除
4.4.3雙向鍊錶實現插值法排序
4.5雙向循環鍊錶
4.5.1雙向循環鍊錶的追加和遍歷
4.5.2雙向循環鍊錶的隨機插入和隨機刪除
第5章數組
5.1數組結構
5.2消除數組中重複元素
5.3求數組中的最大值和次大值
5.4求一個數組的支點元素
5.5求數組的幸運值
5.6在數組中實現二分法查找
5.7求無序數組中最長連續子串的長度
5.8求數組中出現次數超過總數一半的數
5.9環路加油站問題
第6章樹結構
6.1樹、森林、二叉樹
6.2二叉排序樹
6.2.1二叉排序樹的插入與中序遍歷
6.2.2二叉排序樹的深度優先遍歷和廣度優先遍歷
6.2.3二叉排序樹的前序遍歷
6.2.4二叉排序樹的後序遍歷
6.2.5二叉排序樹的廣度優先遍歷
6.2.6二叉排序樹的節點刪除
6.2.7二叉排序樹的按層遍歷
6.2.8求二叉樹的最大深度、最小深度
6.2.9求二叉樹中任意兩個節點之間的最低公共祖先
6.3滿二叉樹
6.3.1滿二叉樹的構建
6.3.2判斷一棵二叉樹是不是滿二叉樹
6.4完全二叉樹
6.4.1完全二叉樹的插入
6.4.2查看完全二叉樹
6.4.3判斷一棵二叉樹是不是完全二叉樹
6.5平衡二叉樹(AVL樹)
6.5.1平衡二叉樹的節點插入
6.5.2平衡二叉樹的節點刪除
6.6紅黑樹(RBTree)
6.6.1紅黑樹的插入
6.6.2紅黑樹的遍歷操作
6.6.3紅黑樹的刪除操作
6.6.4完整代碼實現
6.6.5紅黑樹練習題
第7章堆結構
7.1堆
7.2二叉堆
7.2.1二叉堆的插入
7.2.2二叉堆的遍歷
7.2.3二叉堆的刪除
7.3大(小)頂堆
7.3.1大(小)頂堆的插入
7.3.2大(小)頂堆的堆排序
第8章散列表
8.1散列表(哈希表)
8.2散列函數
8.3求兩數組交集
8.48個方向
第9章字典樹
9.1字典樹結構
9.2字典樹的存入
9.3字典樹的檢索
9.4遍歷字典樹中的鍵
第10章圖
10.1圖結構
10.2圖的表示
10.2.1鄰接矩陣
10.2.2鄰接表
10.2.3鄰接矩陣和鄰接表的使用場景
10.2.4邊的權重
10.3圖結構的代碼實現
10.3.1鄰接矩陣方式
10.3.2鄰接表方式
10.4圖的遍歷
10.4.1圖結構的深度優先遍歷和廣度優先遍歷
10.4.2圖遍歷的代碼實現
10.5生成樹和最小生成樹
10.5.1Prim算法求取最小生成樹
10.5.2最小生成樹的代碼實現
第11章排序算法
11.1排序算法的幾個基本概念
11.1.1排序的穩定性和不穩定性
11.1.2排序的時間複雜度
11.1.3排序的空間複雜度
11.2冒泡排序
11.3選擇排序
11.4插入排序
11.5希爾排序
11.6歸併排序
11.7快速排序
11.8計數排序
11.9桶排序
11.10基數排序
11.1110種常見排序算法的複雜度