數據結構與算法(Python語言版)

耿祥義、張躍平

  • 出版商: 清華大學
  • 出版日期: 2025-05-01
  • 售價: $299
  • 語言: 簡體中文
  • 頁數: 182
  • ISBN: 7302687455
  • ISBN-13: 9787302687450
  • 下單後立即進貨 (約4週~6週)

  • 數據結構與算法(Python語言版)-preview-1
  • 數據結構與算法(Python語言版)-preview-2
  • 數據結構與算法(Python語言版)-preview-3
數據結構與算法(Python語言版)-preview-1

相關主題

商品描述

"本書面向有一定Python語言基礎的讀者,重點講解數據結構和相關算法以及經典算法思想。全書共14章,分別是數據結構概述、算法復雜度、遞歸算法、數組、列表、棧、隊列、二叉樹、散列結構、集合、鏈表、Python的實用算法、圖論和經典算法思想。 本書不僅註重講解每種數據結構的特點,還特別註重結合例子講解如何正確地使用每種數據結構和相關的算法,強調正確地使用相應的數據結構和算法來解決問題。書中精選了一些經典和實用性強的算法思想,並通過解決一些經典的問題來體現這些算法思想的精髓。 本書特別註重體現Python的特色,除前3章以外,其余各章的大部分代碼都體現了Python的特色和優勢。 本書可作為高等院校計算機相關專業“數據結構與算法”課程教材,也可作為軟件開發等專業人員的參考用書。 "

作者簡介

耿祥義,1995年中國科學技術大學博士畢業,獲理學博士學位。1997年從中山大學博士後流動站出站,現任大連交通大學教授。有多年教授Java語言的經驗,已編寫出版十余部教材。

目錄大綱

 

目錄

 

 

 

源碼下載

 

 

 

第1章數據結構概述

 

1.1邏輯結構

 

1.2物理結構

 

1.3算法與結構

 

1.4Python版本

 

習題1

 

 

第2章算法復雜度

 

2.1算法

 

2.2算法的復雜度

 

2.3常見的復雜度

 

習題2

 

 

第3章遞歸算法

 

3.1遞歸算法簡介

 

3.2線性與非線性遞歸

 

3.2.1線性遞歸

 

3.2.2非線性遞歸

 

3.3問題與子問題

 

3.4遞歸與疊代

 

3.5多重遞歸

 

3.6經典遞歸

 

3.6.1楊輝三角形

 

3.6.2老鼠走迷宮

 

3.6.3漢諾塔

 

3.7優化遞歸

 

習題3

 

 

第4章數組

 

4.1順序表的特點

 

4.2array類

 

4.3數組與圍圈留一問題

 

4.4數組與參數存值

 

4.5數組與穩定排序

 

4.6二分法與數組

 

4.7數組的相等

 

4.8數組與洗牌

 

習題4

 

 

第5章列表

 

5.1Python中的列表

 

5.2列表與排序

 

5.3列表與隨機布雷

 

5.4列表與隨機數

 

5.5列表與篩選法

 

5.6列表與全排列

 

5.7列表與組合

 

5.8列表與生命遊戲

 

5.9列表的公共子列表

 

5.10列表與堆

 

習題5

 

 

第6章棧

 

6.1棧的特點

 

6.2列表擔當棧角色

 

6.3棧與遞歸

 

6.4棧與括號匹配

 

6.5棧與深度優先搜索

 

6.6棧與後綴表達式

 

6.7棧與undo操作

 

習題6

 

 

第7章隊列

 

7.1隊列的特點

 

7.2隊列的創建與獨特方法

 

7.3隊列與回文串

 

7.4隊列與加密解密

 

7.5隊列與約瑟夫問題

 

7.6隊列與廣度優先搜索

 

7.7優先隊列

 

7.8隊列與排隊

 

7.9隊列與篩選法

 

習題7

 

 

第8章二叉樹

 

8.1二叉樹的基本概念

 

8.2遍歷二叉樹

 

8.3二叉樹的存儲

 

8.4平衡二叉樹

 

8.5二叉查詢樹和平衡二叉查詢樹

 

8.6SortedSet有序集

 

8.7有序集的基本操作

 

8.8有序集與數據統計

 

習題8

 

 

第9章散列結構

 

9.1散列結構的特點

 

9.2簡單的散列函數

 

9.3創建字典

 

9.4字典與字符、單詞頻率

 

9.5字典與數據緩存

 

9.6OrderedDict類

 

9.7對象作為關鍵字

 

習題9

 

 

第10章集合

 

10.1集合的特點

 

10.2set類

 

10.3集合的基本操作

 

10.4集合與數據過濾

 

10.5集合與獲得隨機數

 

10.6集合與對象

 

習題10

 

 

第11章鏈表

 

11.1鏈表的特點

 

11.2單鏈表

 

11.3雙鏈表

 

11.4鏈式棧

 

習題11

 

 

第12章Python的實用算法

 

12.1Lambda表達式

 

12.2動態遍歷

 

12.3計算代數和與平均值

 

12.4統計次數與計算最大、最小值

 

12.5反轉

 

12.6累積計算

 

12.7裝飾函數

 

12.8函數緩存

 

12.9偏函數

 

12.10過濾數據

 

12.11映射數據

 

12.12縫合數據

 

12.13快速選擇函數

 

12.14索引排序函數

 

12.15依次排序函數

 

12.16NumPy實用函數集錦

 

習題12

 

 

第13章圖論

 

13.1無向圖

 

13.2有向圖

 

13.3網絡

 

13.4圖的存儲

 

13.5圖的遍歷

 

13.6測試連通圖

 

13.7最短路徑

 

13.8最小生成樹

 

習題13

 

 

第14章經典算法思想

 

14.1貪心算法

 

14.2動態規劃

 

14.3回溯算法

 

習題14

 

附錄A重載關系方法和字符串

 

A.1重載關系方法

 

A.2字符串

 

A.3常用的循環

 

參考文獻