基於搜索策略的問題求解——數據結構與C語言程序設計綜合實踐

基於搜索策略的問題求解——數據結構與C語言程序設計綜合實踐

作者: 李國和
出版社: 電子工業
出版在: 2019-10-01
ISBN-13: 9787121369667
ISBN-10: 7121369664





內容描述


本書面向新工科教育,以計算思維為指導、以程序設計為主線、以智能搜索應用為背景、以提高程序實踐技能為目的組織編寫,並採用標準C語言編寫程序。同時以人工智能狀態空間和產生式系統問題求解為背景,從盲目與啟發式、局部與全局、遞推與遞歸、可回溯與不可回溯、最優與隨機、個體與群體等多個維度對比介紹搜索算法。以問題為出發點,問題驅動貫穿全書,各章節依次從淺到深、從易到難遞進介紹,並通過模塊化程序實例,增強內容的可讀性和可理解性。 本書可以作為本科生C語言課程設計用書,或人工智能導論參考書。通過對本書的學習,使讀者不僅可以提高C語言編程和數據結構應用能力,而且可以掌握人工智能基於搜索策略的若乾問題的基本求解方法。


目錄大綱


第1章C語言及其程序設計基礎1
1.1 C語言與程序設計1
1.2 C語言基礎2
1.3結構化程序設計3
1.4構造類型數據(一) 6
1.5構造類型數據(二) 8
1.6模塊化程序設計8
1.7變量有效範圍與存儲類別10
1.8數據位運算11
1.9數據文件處理12
1.10 C語言學習體會13
1.11本章小結15
習題1 15
第2章樹搜索21
2.1問題提出及基本概念21
2.2樹的表示和存儲27
2.2.1樹的表示27
2.2.2樹存儲結構設計27
2.2.3樹存儲實現28
2.3樹的盲目搜索34
2.3.1樹搜索算法34
2.3.2樹搜索實現37
2.4樹的路徑求解41
2.5基於遞歸的樹搜索48
2.5.1遞推與遞歸48
2.5.2基於遞歸的樹節點存在性判斷53
2.5.3基於遞歸的樹路徑求解55
2.6本章小結57
習題2 57
第3章圖搜索59
3.1圖的表示和存儲59
3.1.1圖的表示59
3.1.2圖存儲結構設計60
3.1.3圖存儲實現60
3.2圖的路徑求解60
3.3基於遞歸的圖路徑求解65
3.3.1基於遞歸的深度優先圖搜索65
3.3.2基於遞歸的廣度優先圖搜索68
3.4九宮格路徑求解74
3.4.1九宮格的表示74
3.4.2九宮格存儲結構設計75
3.4.3九宮格搜索實現75
3.4.4針對九宮格基於遞歸的深度優先搜索80
3.4.5針對九宮格基於遞歸的廣度優先搜索81
3.5本章小結83
習題3 83
第4章啟發式搜索84
4.1啟發式信息84
4.1.1啟發式信息定義84
4.1.2九宮格啟發信息84
4.2啟發式搜索路徑求解85
4.2.1九宮格存儲結構設計85
4.2.2啟發式搜索實現85
4.3不可回溯搜索89
4.4局部最優搜索與全局最優搜索90
4.5本章小結92
習題4 92
第5章局部最優搜索94
5.1局部最優搜索過程94
5.2局部最優搜索實現95
5.2.1旅行商最短路徑求解95
5.2.2多元函數極值求解100
5.3本章小結106
習題5 107
第6章全局最優搜索108
6.1搜索策略及其存在問題108
6.2全局最優搜索算法109
6.3基於遺傳算法的問題求解110
6.3.1遺傳算法110
6.3.2遺傳算法相關概念111
6.3.3基於遺傳算法的問題求解過程114
6.3.4遺傳算法特點114
6.3.5旅行商最短路徑求解114
6.3.6函數極值求解124
6.4本章小結133
習題6 134
第7章規則樹搜索135
7.1事實與規則135
7.2規則樹正向搜索137
7.2.1搜索基本算子137
7.2.2正向搜索過程138
7.2.3基於規則樹正向搜索問題的求解139
7.3規則樹逆向搜索150
7.3.1規則樹搜索150
7.3.2逆向搜索過程151
7.3.3基於規則樹的逆向搜索問題求解152
7.4本章小結156
習題7 157
附錄158
附錄A關鍵字158
附錄B運算符159
附錄C編譯預處理命令160
附錄D頭文件與庫函數161
附錄E實驗報告164
參考文獻165




相關書籍

Linux網絡編程

作者 李興華 邢碧麟

2019-10-01

RHCSA/RHCE Red Hat Linux Certification Study Guide (Exams EX200 & EX300), 7/e (Paperback)

作者 Michael Jang Alessandro Orsaria

2019-10-01

C/C++ 程序設計導論 — 從計算到編程 (微課視頻版)

作者 張力生 張化川 何 睿 趙春澤

2019-10-01