中學生算法競賽——Python程序設計基礎
高凱,張高飛 主編;李志強,牛曉珊,李豆豆,馮雪嬌,冀冰雪 副主編
商品描述
目錄大綱
目錄
第1章Python入門編程3
1.1概述3
1.1.1面向底層硬件的“低級”語言4
1.1.2方便用戶編程的“高級”語言4
1.1.3Python語言的主要特點5
1.1.4Python編程環境8
1.1.5簡單的數據類型與基本操作9
1.1.6變量、常量、表達式11
1.2Python安裝與常用集成開發環境(IDE)簡介12
1.2.1安裝Python12
1.2.2Python常用開發環境簡介14
1.3簡單的Python語句與代碼撰寫基本規範23
1.3.1進入Python解釋器23
1.3.2簡單的表達式與語句24
1.3.3基本運算符26
1.3.4數字和字符串29
1.3.5代碼撰寫的基本規範33
1.4常用內置方法和標準方法簡介34
1.4.1常見的內置方法34
1.4.2標準庫方法40
1.5外部擴展庫40
1.5.1安裝41
1.5.2使用43
本章小結與復習44
習題44
第2章Python基本程序流程與控制結構46
2.1程序流程圖與偽碼46
2.2條件選擇結構48
2.3多條件分支與嵌套條件語句51
2.4循環結構概述54
2.4.1while循環54
2.4.2for循環56
2.5while循環和for循環程序設計56
2.6break、continue、else子句61
2.7嵌套結構62
本章小結與復習66
習題67
第3章Python序列化數據及推導式69
3.1概述69
3.1.1序列化數據69
3.1.2推導式70
3.2序列化數據的主要特點和常用內置函數70
3.2.1主要特點70
3.2.2常用內置函數75
3.3字符串77
3.3.1基本特性77
3.3.2常用的字符串內置方法79
3.4列表和元組83
3.4.1列表和元組的主要異同點83
3.4.2列表和元組的常用方法85
3.4.3列表和元組的推導(生成)式90
3.5字典和集合94
3.5.1字典和集合的主要異同點94
3.5.2字典和集合的常用方法95
3.5.3字典和集合的推導(生成)式99
本章小結與復習100
習題101
第4章函數與面向對象程序設計入門103
4.1概述103
4.2定義函數104
4.3函數的調用及其返回值106
4.4函數參數109
4.5變量的作用域114
4.6函數的遞歸調用116
4.7lambda匿名函數121
4.8面向對象程序設計入門123
4.8.1類及其實例化123
4.8.2封裝中的私有屬性和私有方法126
4.8.3繼承與多態126
本章小結與復習129
習題129
第5章Python文件與路徑的基本操作130
5.1讀寫文本文件130
5.1.1打開和關閉文件的基本操作131
5.1.2讀寫文本文件的基本操作132
5.1.3讀寫CSV文件的基本操作137
5.2文件路徑的基本操作140
本章小結與復習151
習題152
Part Ⅱ算法與競賽入門
第6章算法入門157
6.1算法是什麽157
6.2基本算法簡介158
6.2.1枚舉法158
6.2.2貪心法160
6.2.3分治法161
6.2.4遞歸法162
6.3線性表、棧、隊列164
6.3.1線性表164
6.3.2棧168
6.3.3隊列171
6.4樸素的字符串匹配算法172
6.5簡單排序算法174
6.5.1冒泡排序174
6.5.2快速排序算法177
6.5.3冒泡排序和快速排序算法所用時間的比較179
本章小結與復習180
習題181
第7章算法競賽入門183
7.1時間復雜度概述183
7.1.1引例183
7.1.2時間復雜度184
7.2算法模擬與暴力求解189
7.3圖的遍歷問題196
7.3.1圖節點的遍歷及搜索問題197
7.3.2基於回溯的深度優先搜索算法的設計與實現197
7.3.3廣度優先搜索算法的設計與實現205
7.4並查集問題及其算法設計213
7.5動態規劃入門217
7.6算法與算法類競賽簡介219
7.6.1算法家族的“準全家福”219
7.6.2算法類競賽簡介220
7.6.3語言的選擇和學習建議222
本章小結與復習223
習題224
參考文獻225