TOP
0
0
魅麗。花火原創小說66折起
數據結構與算法:Python語言實現(簡體書)
滿額折

數據結構與算法:Python語言實現(簡體書)

人民幣定價:109 元
定  價:NT$ 654 元
優惠價:87569
領券後再享89折
無庫存,下單後進貨(採購期約45個工作天)
可得紅利積點:17 點
相關商品
商品簡介
目次

商品簡介

本書採用Python語言介紹數據結構和算法,包括其設計、分析和實施。本書源代碼簡潔、明確,面向對象的觀點貫穿始終,通過繼承最大限度地提高代碼重用,同時彰顯不同抽象數據類型和算法之間的異同。

目次

出版者的話
譯者序
前言
致謝
作者簡介
第1章 Python入門 1
1.1 Python概述 1
1.1.1 Python解釋器 1
1.1.2 Python程序預覽 1
1.2 Python對象 2
1.2.1 標識符、對象和賦值語句 2
1.2.2 創建和使用對象 4
1.2.3 Python的內置類 4
1.3 表達式、運算符和優先級 8
1.4 控制流程 12
1.4.1 條件語句 12
1.4.2 循環語句 14
1.5 函數 16
1.5.1 信息傳遞 17
1.5.2 Python的內置函數 19
1.6 簡單的輸入和輸出 20
1.6.1 控制台輸入和輸出 21
1.6.2 文件 21
1.7 異常處理 22
1.7.1 拋出異常 23
1.7.2 捕捉異常 24
1.8 迭代器和生成器 26
1.9 Python的其他便利特點 28
1.9.1 條件表達式 29
1.9.2 解析語法 29
1.9.3 序列類型的打包和解包 30
1.10 作用域和命名空間 31
1.11 模塊和import語句 32
1.12 練習 34
擴展閱讀 36
第2章 面向對象編程 37
2.1 目標、原則和模式 37
2.1.1 面向對象的設計目標 37
2.1.2 面向對象的設計原則 38
2.1.3 設計模式 39
2.2 軟件開發 40
2.2.1 設計 40
2.2.2 偽代碼 41
2.2.3 編碼風格和文檔 42
2.2.4 測試和調試 43
2.3 類定義 44
2.3.1 例子:CreditCard類 45
2.3.2 運算符重載和Python的特殊方法 48
2.3.3 例子:多維向量類 50
2.3.4 迭代器 51
2.3.5 例子:Range類 52
2.4 繼承 53
2.4.1 擴展CreditCard類 54
2.4.2 數列的層次圖 57
2.4.3 抽象基類 60
2.5 命名空間和面向對象 62
2.5.1 實例和類命名空間 62
2.5.2 名稱解析和動態調度 65
2.6 深拷貝和淺拷貝 65
2.7 練習 67
擴展閱讀 70
第3章 算法分析 71
3.1 實驗研究 71
3.2 本書使用的7種函數 74
3.2.1 常數函數 74
3.2.2 對數函數 74
3.2.3 線性函數 75
3.2.4 n-log-n函數 75
3.2.5 二次函數 76
3.2.6 三次函數和其他多項式 77
3.2.7 指數函數 77
3.2.8 比較增長率 79
3.3 漸近分析 79
3.3.1 大O符號 80
3.3.2 比較分析 82
3.3.3 算法分析示例 84
3.4 簡單的證明技術 89
3.4.1 示例 89
3.4.2 反證法 89
3.4.3 歸納和循環不變量 90
3.5 練習 91
擴展閱讀 95
第4章 遞歸 96
4.1 說明性的例子 96
4.1.1 階乘函數 96
4.1.2 繪製英式標尺 97
4.1.3 二分查找 99
4.1.4 文件系統 101
4.2 分析遞歸算法 104
4.3 遞歸算法的不足 106
4.4 遞歸的其他例子 109
4.4.1 線性遞歸 109
4.4.2 二路遞歸 112
4.4.3 多重遞歸 113
4.5 設計遞歸算法 114
4.6 消除尾遞歸 115
4.7 練習 116
擴展閱讀 118
第5章 基於數組的序列 119
5.1 Python序列類型 119
5.2 低層次數組 119
5.2.1 引用數組 121
5.2.2 Python中的緊湊數組 122
5.3 動態數組和攤銷 124
5.3.1 實現動態數組 126
5.3.2 動態數組的攤銷分析 127
5.3.3 Python列表類 130
5.4 Python序列類型的效率 130
5.4.1 Python的列表和元組類 130
5.4.2 Python的字符串類 134
5.5 使用基於數組的序列 136
5.5.1 為遊戲存儲高分 136
5.5.2 為序列排序 138
5.5.3 簡單密碼技術 140
5.6 多維數據集 142
5.7 練習 145
擴展閱讀 147
第6章 棧、隊列和雙端隊列 148
6.1 棧 148
6.1.1 棧的抽象數據類型 148
6.1.2 簡單的基於數組的棧實現 149
6.1.3 使用棧實現數據的逆置 152
6.1.4 括號和HTML標記匹配 152
6.2 隊列 155
6.2.1 隊列的抽象數據類型 155
6.2.2 基於數組的隊列實現 156
6.3 雙端隊列 160
6.3.1 雙端隊列的抽象數據類型 160
6.3.2 使用環形數組實現雙端隊列 161
6.3.3 Python collections模塊中的雙端隊列 162
6.4 練習 163
擴展閱讀 165
第7章 鏈表 166
7.1 單向鏈表 166
7.1.1 用單向鏈表實現棧 169
7.1.2 用單向鏈表實現隊列 171
7.2 循環鏈表 173
7.2.1 輪轉調度 173
7.2.2 用循環鏈表實現隊列 174
7.3 雙向鏈表 175
7.3.1 雙向鏈表的基本實現 177
7.3.2 用雙向鏈表實現雙端隊列 179
7.4 位置列表的抽象數據類型 180
7.4.1 含位置信息的列表抽象數據類型 182
7.4.2 雙向鏈表實現 183
7.5 位置列表的排序 186
7.6 案例研究:維護訪問頻率 186
7.6.1 使用有序表 187
7.6.2 啟發式動態調整列表 188
7.7 基於鏈接的序列與基於數組的序列 190
7.8 練習 192
擴展閱讀 195
第8章 樹 196
8.1 樹的基本概念 196
8.1.1 樹的定義和屬性 196
8.1.2 樹的抽象數據類型 199
8.1.3 計算深度和高度 201
8.2 二叉樹 203
8.2.1 二叉樹的抽象數據類型 204
8.2.2 二叉樹的屬性 206
8.3 樹的實現 207
8.3.1 二叉樹的鏈式存儲結構 207
8.3.2 基於數組表示的二叉樹 212
8.3.3 一般樹的鏈式存儲結構 214
8.4 樹的遍歷算法 214
8.4.1 樹的先序和後序遍歷 214
8.4.2 樹的廣度優先遍歷 216
8.4.3 二叉樹的中

您曾經瀏覽過的商品

購物須知

大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。

特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。

為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。

若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。

優惠價:87 569
無庫存,下單後進貨
(採購期約45個工作天)

暢銷榜

客服中心

收藏

會員專區