Python算法設計與分析從入門到精通

明日科技

  • 出版商: 清華大學
  • 出版日期: 2021-11-01
  • 定價: $479
  • 售價: 8.5$407
  • 語言: 簡體中文
  • 頁數: 300
  • 裝訂: 平裝
  • ISBN: 7302592012
  • ISBN-13: 9787302592013
  • 立即出貨

  • Python算法設計與分析從入門到精通-preview-1
  • Python算法設計與分析從入門到精通-preview-2
  • Python算法設計與分析從入門到精通-preview-3
Python算法設計與分析從入門到精通-preview-1

買這商品的人也買了...

商品描述

《Python算法設計與分析從入門到精通》是一本綜合講述算法和數據結構的入門書,以圖解的方式全面介紹了當下比較實用的算法。全書分為4篇,共13章,包括算法入門、算法的描述、Python編程基礎、排序算法、四大經典算法、其他算法、鏈表算法、樹形結構算法、圖形結構算法、查找算法、哈希表、使用算法解決常見數學問題、算法常見經典問題等。本書從用戶學習與應用的角度出發,所有算法都結合具體生活實例進行講解,涉及的程序代碼給出了詳細的註釋,並且運用大量的示意圖和實例應用,力求打造零壓力的學習氛圍,使讀者輕松掌握各種主流算法,快速提高開發技能,拓寬職場道路。

作者簡介

明日科技,全稱是吉林省明日科技有限公司,是一家專業從事軟件開發、教育培訓以及軟件開發教育資源整合的高科技公司,其編寫的教材非常注重選取軟件開發中的必需、常用內容,同時也很注重內容的易學、方便性以及相關知識的拓展性,深受讀者喜愛。其教材多次榮獲“全行業優秀暢銷品種”“全國高校出版社優秀暢銷書”等獎項,多個品種長期位居同類圖書銷售排行榜的前列。

目錄大綱

第1篇 基礎篇
第1章算法入門2
1.1 什麼是算法2
1.2 基礎算法 3
1.2.1 算法的定義 3
1.2.2 算法的特性 4
1.2.3 算法的性能分析與結果5
1.2.4 大O表示法7
1.3 算法的應用領域 9
1.4 小結 11

第 2 章算法的描述 12
2.1 用自然語言表示 12
2.2 用圖表示 14
2.2.1 流程圖符號 14
2.2.2 三大基本結構 15
2.3 用 N-S 圖表示 19
2.4 用代碼實現算法21
2.4.1 用偽代碼實現算法21
2.4.2 用編程語言實現算法21
2.4.3 選擇一門編程語言 24
2.5 小結 25

第 3 章 Python 編程基礎 26
3.1 變量 26
3.1.1 變量的命名和賦值26
3.1.2 變量的基本類型 27
3.1.3 變量的輸入與輸出 29
3.1.4 變量的計算 31
3.2 三大結構 37
3.2.1 順序結構 37
3.2.2 條件分支結構 37
3.2.3 循環結構 42
3.3 列表與元組 49
3.3.1 列表的創建 49
3.3.2 檢測列表元素 50
3.3.3 列表的截取——版權50
3.3.4 列表的習慣 51
3.3.5 遍歷列表 52
3.3.6 列表排序 54
3.3.7 元組 56
3.4 字典與集合 58
3.4.1 字典的定義 59
3.4.2 遍歷字典 61
3.4.3 集合簡介 62
3.5 函數 64
3.5.1 函數的定義 64
3.5.2 函數的調用 65
3.5.3 函數參數的傳遞 66
3.6 一個對象基礎70
3.6.1 深度對象概述70
3.6.2 類的定義和使用 72
3.7 小結 79

第2篇 算法篇
第4章排序算法82
4.1 選擇排序算法82
4.2冒泡排序算法85
4.3插入插入算法88
4.4 合併排序算法90
4.5希爾排序算法94
4.6 快速排序算法97
4.7 堆疊排序算法101
4.7.1 堆的概念 101
4.7.1 使用堆積進行排序103
4.8 計數排序算法 108
4.9 基數排序算法110
4.10 各種排序算法間的比較 112
4.11 小結 113

第5章四大經典算法114
5.1 遞歸算法114
5.1.1 什麼是遞歸算法 114
5.1.2 詳解遞歸116
5.1.3 回歸算法應用——漢諾塔問題118
5.2 動態規划算法121
5.2.1 什麼是動態規划算法 121
5.2.2 詳解動態規划算法 121
5.2.3 動態規划算法應用——背包問題 123
5.3 貪心算法128
5.3.1 什麼是貪心算法 129
5.3.2 詳解貪心算法 129
5.3.3 貪心算法應用——超市找零問題 130
5.4 回溯算法133
5.4.1 什麼是迴線算法 133
5.4.2 詳解迴線網絡 134
5.4.3 迴線算法應用——四皇后、八皇后問題135
5.5 小結 140

第6章其他算法141
6.1 分治算法141
6.1.1 遞歸排序法 142
6.1.2 迭代排序法 144
6.1.3 計算連續子列表的最大和 146
6.2 K最近鄰算法148
6.2.1 圖形分類 148
6.2.2 特徵提取148
6.2.3 回歸150
6.3 小結 153

第3篇 數據結構篇
第7章鍊錶算法156
7.1 創建單向鍊錶 156
7.2 單向鍊錶的操作 158
7.2.1 鍊錶的基本操作 158
7.2.2 單向鍊錶中結點的添加159
7.2.3 單向鍊錶中結點的刪除164
7.2.4單向鍊錶的連接167
7.2.2.2. 單向鍊錶的 5 170
7.3 引與鍊錶 174
7.3.1 用鍊錶實現174
7.3 用鍊錶能實現。177
7.4 小結 181

第8章樹形結構算法182
8.1 樹的概念 182
8.1.1 樹的定義 183
8.1.2 樹的表示 183
8.1.3 樹的相關術語 184
8.2 二叉樹簡介 184
8.2.1 什麼是二叉樹 185
8.2.2 二叉樹的類別 185
8.3 二叉樹操作 186
8.3.1 創建二叉樹 187
8.3.2 遍歷二叉樹 190
8.3.3 二叉樹結點的查找194
8.3.4 二叉樹結點的插入 196
8.3.5 二叉樹結點的刪除 198
8.4 二叉樹應用 199
8.4.1 問題描述 199
8.4.2 解析問題 199
8.4.3 代碼實現200
8.5 小結 201

第9章圖形結構算法202
9.1 圖形結構簡介 202
9.1.1 圖的定義 202
9.1.2 圖的相關術語 203
9.2 圖的遍曆算法203
9.2.1深度優先遍歷204
9.2.2 廣度優先遍歷206
9.3 查找最小生成樹 208
9.3.1 普里姆算法 210
9.3.2 克魯斯卡爾算法 213
9.4 尋求請求路徑 216
9.4.1 狄克斯特拉算法 216
9.4.2 貝爾曼福特算法219
9.4.3 弗洛伊德算法224
9.5 小結 226

第10章查找算法227
10.1 順序查找算法227
10.2 二分查找算法 229
10.3 插補查找算法 233
10.4 分塊搜索算法 236
10.5 斐波那契找到算法 239
10.6 哈希算法243
10.6.1 哈希表和哈希函數 243
10.6.2 除留餘數法 244
10.6.3 折疊法 244
10.6.4 平方取中法 245
10.6.5 246
10.7 不同尋找算法的時間複雜度比較247
10.8 小結 248

第11章哈希表249
11.1什麼是哈希表249
11.2 哈希函數 249
11.3 解決哈希表的衝突問題 250
11.3.1 開放指向法 250
11.3.2 鏈地址法 252
11.3.3再哈希函數法253
11.3.4 建立公共消費區法254
11.3.5 4種解決方法比較 254
11.4 哈希表的性能 255
11.4.1 負載因 255
11.4.2 時間性能 255
11.5 哈希表的應用 256
11.5.1 問題描述 256
11.5.2 解析問題 256
11.5.3 Python代碼實現257
11.6 小結 258

第4篇 實例篇
第12章使用解決常見數學問題260
12.1 斐波那契數列 260
12.1.1 問題描述 260
12.1.2 解析問題 260
12.1.3 代碼實現 261
12.2 尋找水仙花數262
12.2.1 問題描述 262
12.2.2解析問題262
12.2.3 代碼實現 263
12.3 狹隘263
12.3.1 問題描述 263
12.3.2解析問題264
12.3.3 代碼實現 264
12.4 驗證四方定理265
12.4.1 問題描述 265
12.4.2 解析問題 265
12.4.3 代碼實現 265
12.5 角谷猜想 266
12.5.1 問題描述 266
12.5.2解析問題266
12.5.3 代碼實現 267
12.6 挖黃金礦268
12.6.1 問題描述 268
12.6.2 解析問題 268
12.6.3 代碼實現 274
12.7 求解最大數和最小公倍數 276
12.7.1 問題描述 276
12.7.2 解析問題 276
12.7.3 代碼實現 276
12.8 使用二分法求平方根 277
12.8.1 問題描述 277
12.8.2 解析問題 277
12.8.3 代碼實現278
12.9 細分質因數 279
12.9.1 問題描述 279
12.9.2 解析問題 279
12.9.3 代碼實現279
12.10數字黑洞280
12.10.1 問題描述 280
12.10.2 解析問題 280
12.10.3 代碼實現 280
12.11 德國自我式281
12.11.1 問題描述 281
12.11.2 解析問題 281
12.11.3 代碼實現 282
12.12 小結 282

第13章算法常見問題283
13.1 雞兔同籠283
13.1.1 問題描述 283
13.1.2解析問題283
13.1.3 代碼實現283
13.2 計算學生的最後得分 284
13.2.1 問題描述 284
13.2.2 解析問題 284
13.2.3 代碼實現285
13.3 猜數字 286
13.3.1 問題描述 286
13.3.2解析問題286
13.3.3 代碼實現286
13.4 凱撒智慧術 288
13.4.1 問題描述 288
13.4.2 解析問題 288
13.4.3 代碼實現288
13.5隨機分配辦公室290
13.5.1 問題描述 290
13.5.2 解析問題 290
13.5.3 代碼實現290
13.6 取火柴遊戲 291
13.6.1 問題描述 291
13.6.2解析問題291
13.6.3 代碼實現291
13.7 計算影廳座位數 293
13.7.1 問題描述 293
13.7.2 解析問題 293
13.7.3 代碼實現294
13.8 五家共井 295
13.8.1 問題描述 295
13.8.2 解析問題 295
13.8.3 代碼實現 295
13.9借書296
13.9.1 問題描述 296
13.9.2 解析問題 296
13.9.3 代碼實現 296
13.10 三色球 297
13.10.1 問題描述 297
13.10.2 解析問題 297
13.10.3 代碼實現 298
13.11 馬踏棋盤 298
13.11.1 問題描述 298
13.11.2 解析問題 298
13.11.3 代碼實現 299
13.12 小結 300