數(shù)據(jù)結構與算法(Python版)
定 價:59 元
叢書名:普通高等教育系列教材
- 作者:周元哲 編著
- 出版時間:2020/9/1
- ISBN:9787111663638
- 出 版 社:機械工業(yè)出版社
- 中圖法分類:TP311
- 頁碼:276
- 紙張:
- 版次:
- 開本:16開
《數(shù)據(jù)結構與算法(Python版)》講述了Python語言與數(shù)據(jù)結構。主要內容包括數(shù)據(jù)結構與算法、Python開發(fā)環(huán)境、Python數(shù)據(jù)類型、Python三大結構、函數(shù)、線性表、樹和二叉樹、圖、查找、排序、異常處理與調試等。
《數(shù)據(jù)結構與算法(Python版)》內容精煉、由淺入深,注重學習的連續(xù)性和漸進性,適合作為高等院校相關專業(yè)教材或教學參考書,也可作為計算機技術人員的應用參考書,還可作為全國計算機等級考試、軟件技術資格與水平考試的培訓資料。
前言
第1章數(shù)據(jù)結構與算法
11程序
12數(shù)據(jù)結構
121數(shù)據(jù)結構的核心地位
122數(shù)據(jù)結構的組成
13算法
131算法的5個屬性
132算法的3個層次
14算法復雜度
141空間復雜度
142時間復雜度
143提高算法效率的方法
15算法表示方式
151流程圖
152N-S圖
153偽語言
16習題
第2章Python開發(fā)環(huán)境
21Python簡介
211Python的特點
212Python的應用場合
22Python解釋器
221Ubuntu下安裝Python
222Windows下安裝Python
23Python編輯器
231IDLE
232PyCharm
233Anaconda
234Jupyter Notebook
24代碼書寫規(guī)則
241縮進
242邏輯行與物理行
243注釋
244編碼風格
25習題
第3章Python數(shù)據(jù)類型
31變量
311變量命名
312變量引用
32運算符
321算術運算符
322關系運算符
323賦值運算符
324邏輯運算符
325位運算符
326成員運算符
327身份運算符
33表達式
331表達式的概念
332運算符的優(yōu)先級
34數(shù)據(jù)類型
341數(shù)據(jù)類型的概念
342數(shù)據(jù)類型的分類
35數(shù)值
351數(shù)值的概念
352數(shù)值的操作
36列表
361列表的概念
362列表的操作
37元組
371元組的概念
372元組的操作
38字符串
381字符串的概念
382字符串的操作
39字典
391字典的概念
392字典的操作
310集合
3101集合的概念
3102集合的操作
3103集合運算
311組合數(shù)據(jù)總結
3111相互關系
3112數(shù)據(jù)類型轉換
312實例
3121發(fā)撲克牌
3122統(tǒng)計相同單詞出現(xiàn)的次數(shù)
3123計算兩個日期間隔天數(shù)
313習題
第4章Python三大結構
413種基本結構
42順序結構
421輸入、處理和輸出
422順序程序設計舉例
43選擇結構
431單分支
432雙分支
433多分支
434分支嵌套
44循環(huán)概述
441循環(huán)結構
442循環(huán)分類
45while語句
451基本形式
452else 語句
453無限循環(huán)
46for語句
461應用序列類型
462內置函數(shù)range()
47循環(huán)嵌套
471循環(huán)嵌套的概念
472循環(huán)嵌套實現(xiàn)
48輔助語句
481break語句
482continue語句
483pass語句
49迭代器
491iter()方法
492next()方法
410實例
4101猴子吃桃問題
4102買地鐵車票
4103打印金字塔
4104冰雹數(shù)列
4105輸出特定三角形
411習題
第5章函數(shù)
51函數(shù)聲明與調用
511函數(shù)聲明
512函數(shù)調用
513函數(shù)返回值
52參數(shù)傳遞
521實參與形參
522傳對象引用
53參數(shù)分類
531必備參數(shù)
532默認參數(shù)
533關鍵參數(shù)
534不定長參數(shù)
54兩類特殊函數(shù)
541lambda函數(shù)
542遞歸函數(shù)
55變量作用域
551局部變量
552全局變量
56實例
561篩選法求素數(shù)
562可逆素數(shù)
563遞歸求xn
564孿生素數(shù)
565漢諾塔
566完全數(shù)
567逆置
568氣溫上升最長天數(shù)
569兔子上樓梯
57習題
第6章線性表
61線性表的相關概念
62線性表的存儲
621線性存儲
622鏈式存儲
63單鏈表操作
631單鏈表的概述
632單鏈表的操作實現(xiàn)
64棧
641棧的相關概念
642棧的操作
65隊列
651隊列的相關概念
652隊列的操作
66字符串
661字符串的相關概念
662字符串的操作
67實例
671斐波那契數(shù)列
672判斷回文數(shù)
673模式匹配
674字符串統(tǒng)計
675Anagrams問題
676年齡問題
677愷撒密碼
68習題
第7章樹和二叉樹
71樹和二叉樹的概述
711樹和二叉樹的相關概念
712二叉樹的性質
72二叉樹存儲
721順序存儲
722鏈式存儲
73二叉樹遍歷
731先序遍歷
732中序遍歷
733后序遍歷
734層序遍歷
74由遍歷序列創(chuàng)建二叉樹
741由先序、中序推出后序遍歷
742由中序、后序推出先序遍歷
743由先序、后序推出中序遍歷
75二叉樹的創(chuàng)建
76哈夫曼樹
761哈夫曼編碼
762哈夫曼算法
77樹和二叉樹的關系
771樹的存儲
772樹與二叉樹轉換
78實例
781打印二叉樹深度
782打印二叉樹左右視圖
783二叉樹左右交換
784括號組合
785對稱二叉樹
79習題
第8章圖
81圖的概述
811圖的相關概念
812NetworkX庫
82圖的存儲
821鄰接矩陣
822鄰接表
83圖的遍歷
831深度優(yōu)先遍歷
832廣度優(yōu)先遍歷
84最小生成樹
841克魯斯卡爾(Kruskal)算法
842普里姆(Prim)算法
85最短路徑
851迪杰斯特拉(Dijkstra)算法
852弗洛伊德(Floyd)算法
86實例
861旅游路線
862單詞搜索
87習題
第9章查找
91查找算法
92基于線性表查找
921順序查找
922二分查找
923分塊查找
93二叉排序樹
931二叉排序樹的特性
932二叉排序樹的操作
94平衡二叉樹
941平衡因子
942構建平衡二叉樹
95哈希表
96哈希算法
961哈希函數(shù)
962Python內置方法
97解決沖突的方法
971開放定址法
972鏈地址法
98Python自身查找算法
99實例
991查找最大值或最小值
992二分查找法遞歸實現(xiàn)
993查找出現(xiàn)次數(shù)最多的整數(shù)
910習題
第10章排序
101排序概述
102插入排序
1021直接插入排序
1022折半插入排序
1023希爾排序
103交換排序
1031冒泡排序
1032快速排序
104選擇排序
1041簡單選擇排序
1042堆排序
105歸并排序
106排序總結
1061時間性能
1062空間性能
1063穩(wěn)定性能
1064排序算法的選擇準則
107Python自身排序算法
1071sorted()
1072listsort()
1073listreverse()
108實例
1081有序序列插入元素
1082求解第二大整數(shù)
1083輸出最小的k個數(shù)
109習題
第11章異常處理與調試
111錯誤類型
1111語法錯誤
1112運行時錯誤
1113邏輯錯誤
112捕獲和處理異常
1121try…except…else語句
1122try…finally語句
1123raise語句
1124自定義異常
1133種調試手段
114Python調試工具
1141IDLE
1142IPDB
1143Spyder
1144PDB
1145PyCharm
115習題
附錄
附錄A軟件考試和軟件競賽
A1全國計算機等級考試二級
Python語言程序設計考試
(2018年版)
A11基本要求
A12考試內容
A13考試方式
A2ACM國際大學生程序設計
競賽
A21在線判題系統(tǒng)
A22ACM訓練環(huán)境
A23ACM的算法知識點
A3CSP認證
A31CSP認證簡介
A32認證形式
A33涉及知識點
A4?途W(wǎng)
A5力扣
附錄B圖論相關模塊
B1NumPy
B11NumPy簡介
B12創(chuàng)建數(shù)組
B13查看數(shù)組
B14索引和切片
B15矩陣運算
B165個NumPy 函數(shù)
B2Matplotlib
B21Matplotlib簡介
B225種圖形
B3NetworkX
B31圖
B32節(jié)點
B33邊
B34相關屬性
B4在線圖結構繪制工具
B41Graph Editor
B42Graphviz
附錄C更多數(shù)據(jù)類型
C1collections模塊
C11namedtuple
C12deque
C13Counter
C14OrderedDict
C15ChainMap
C2heapq 模塊
C3array模塊
附錄D參考答案
參考文獻