圖書簡介
本教材為國家級“十一五”規劃教材《算法設計與分析》的輔助教材. 主教材的主要內容包括基礎知識、分治策略、動態規劃、貪心法、回溯與分支限界、算法分析與問題的計算複雜度、NP完全性、近似算法、隨機算法、處理難解問題的策略等。
本書對主教材所闡述的算法設計技術和分析方法進行了總結,並對其中100多道典型的習題給出了詳盡的解答和分析。
本書可作為大學計算機科學與技術、軟體工程、信息安全、信息與計算科學等專業本科生和研究生輔助教學用書,也可作為從事實際問題求解的算法設計與分析工作的參考書。
圖書目錄
第1章基礎知識1
1.1內容提要1
1.2習題3
1.3習題解答與分析6
第2章分治策略10
2.1內容提要10
2.2習題11
2.3習題解答與分析14
第3章動態規劃28
3.1內容提要28
3.2習題31
3.3習題解答與分析34
第4章貪心法47
4.1內容提要47
4.2習題50
4.3習題解答與分析52
第5章回溯與分支限界66
5.1內容提要66
5.2習題68
5.3習題解答與分析69
第6章算法分析與問題的計算複雜度74
6.1內容提要74
6.2習題75
6.3習題解答與分析76
目錄算法設計與分析習題解答與學習指導第7章NP完全性82
7.1內容提要82
7.2習題83
7.3習題解答與分析85
第8章近似算法91
8.1內容提要91
8.2習題92
8.3習題解答與分析93
第9章隨機算法96
9.1內容提要96
9.2習題97
9.3習題解答與分析97
第10章處理難解問題的策略103
10.1內容提要103
10.2習題104
10.3習題解答與分析104
參考文獻120第1章緒論1
1.1計算機的基本概念1
1.1.1什麼是計算機1
1.1.2計算機的分類2
1.1.3計算機的特點3
1.1.4計算機的用途3
1.1.5計算機的發展5
1.2計算機科學與技術學科的定義7
1.2.1計算機科學與技術學科7
1.2.2計算機科學與技術學科的根本問題8
1.2.3計算機科學技術的研究範疇8
1.3計算機科學與技術學科的教育10
1.3.1技術的變化10
1.3.2文化的變化11
1.3.3教育觀念的變化11
1.4對計算機科學與技術學科畢業生的基本要求12
1.4.1知識、能力和素質12
1.4.2檢驗標準12
1.4.3優秀學生13
1.5信息化社會的挑戰13
1.5.1信息化社會的特徵13
1.5.2Internet與信息化社會14
1.5.3信息化社會對計算機人才的需求16
1.6計算機科學與技術學科知識體系17
1.6.1知識體系的結構17
1.6.2學科知識體系一覽17
1.6.3課程體系結構22
本章小結23
習題23
第2章計算機的基礎知識26
2.1計算機的運算基礎26
2.1.1數制26
2.1.2數制間的轉換28
2.1.3碼制32
2.1.4數的定點表示和浮點表示33
2.1.5信息的幾種編碼35
目錄算法設計與分析習題解答與學習指導2.2邏輯代數基礎38
2.2.1命題邏輯基礎39
2.2.2邏輯代數基礎42
2.3計算機的基本結構與工作原理43
2.3.1計算機硬體的基本結構43
2.3.2計算機的工作原理46
2.3.3計算機組織與系統結構47
2.4程式設計基礎48
2.4.1程式設計語言48
2.4.2結構化程式設計49
2.4.3良好的程式設計風格49
2.5算法基礎50
2.5.1解題的步驟50
2.5.2什麼是算法51
2.5.3怎樣衡量算法的優劣52
2.6數據結構基礎53
2.6.1什麼是數據結構53
2.6.2幾種典型的數據結構54
本章小結56
習題57
第3章計算機硬體系統59
3.1計算機系統59
3.1.1馮·諾依曼體系結構59
3.1.2計算機體系結構的發展60
3.1.3計算機體系結構的評價標準60
3.1.4微型計算機的硬體結構61
3.2系統單元62
3.2.1系統主機板與時鐘頻率62
3.2.2電子數據與指令62
3.2.3微處理器63
3.2.4主存儲器65
3.3輸入輸出系統68
3.3.1輸入輸出原理68
3.3.2擴展槽和適配卡69
3.3.3系統匯流排70
3.3.4連線埠與連線電纜71
3.4輸入設備72
3.4.1鍵盤輸入72
3.4.2定點輸入設備73
3.4.3掃描輸入設備74
3.4.4語音輸入設備76
3.4.5其他輸入設備77
3.5輸出設備78
3.5.1顯示器78
3.5.2印表機79
3.5.3繪圖儀80
3.5.4其他輸出設備80
3.6輔助存儲設備81
3.6.1硬碟81
3.6.2光碟83
3.6.3快閃記憶體和隨身碟84
3.6.4磁帶85
3.7平板電腦86
3.7.1平板電腦的概念86
3.7.2平板電腦的發展86
3.7.3平板電腦的晶片87
3.7.4ARM微處理器套用88
本章小結89
習題89
第4章計算機系統軟體與工具軟體92
4.1程式設計語言翻譯系統92
4.1.1彙編語言翻譯系統93
4.1.2高級程式設計語言翻譯系統93
4.1.3高級程式設計語言解釋系統94
4.2作業系統94
4.2.1什麼是作業系統95
4.2.2作業系統的功能95
4.2.3作業系統的分類96
4.2.4幾種常用的作業系統97
4.3工具軟體106
4.3.1下載軟體106
4.3.2FTP工具軟體108
4.3.3圖像瀏覽軟體108
4.3.4截圖軟體109
4.3.5PDF檔案閱讀軟體109
4.3.6詞典工具110
4.3.7檔案壓縮軟體110
4.3.8防毒軟體110
本章小結111
習題111
第5章計算機套用軟體113
5.1文字處理軟體113
5.1.1Word2007概述113
5.1.2文檔的基本操作117
5.1.3文檔的排版127
5.2電子表格軟體138
5.2.1Excel2007基本知識138
5.2.2工作表的建立140
5.2.3工作表的編輯和格式化149
5.2.4數據的圖表化153
5.2.5數據列表157
5.2.6頁面設定和列印159
5.3文稿演示軟體161
5.3.1文稿演示軟體的基本操作161
5.3.2格式化和美化演示文稿164
5.3.3動畫、超連結和多媒體技術167
5.3.4放映和列印演示文稿171
本章小結172
習題173
第6章資料庫系統及其套用177
6.1資料庫系統的基本概念177
6.1.1資料庫系統的定義177
6.1.2數據管理技術的發展178
6.1.3資料庫系統的體系結構179
6.1.4資料庫管理系統180
6.2結構化查詢語言SQL概述182
6.2.1SQL的產生與發展182
6.2.2SQL的特點182
6.2.3SQL的功能183
6.3SQL的數據定義操作183
6.3.1基本表的定義、修改與撤消184
6.3.2索引的定義與撤消187
6.4SQL的數據查詢操作187
6.4.1查詢語句的一般形式188
6.4.2簡單查詢189
6.4.3多表查詢190
6.4.4嵌套查詢191
6.5SQL的數據更新操作191
6.5.1插入操作191
6.5.2刪除操作192
6.5.3修改操作193
6.6幾種新型的資料庫系統193
6.6.1分散式資料庫193
6.6.2多媒體資料庫194
6.6.3並行資料庫194
6.6.4演繹資料庫194
6.6.5主動資料庫195
6.6.6數據倉庫195
6.7資料庫系統的套用196
6.7.1信息與信息系統196
6.7.2事務處理系統197
6.7.3管理信息系統197
6.7.4決策支持系統198
6.7.5數據挖掘系統199
本章小結200
習題200
第7章多媒體技術及其套用204
7.1多媒體204
7.1.1媒體的定義204
7.1.2多媒體系統的主要特徵205
7.1.3多媒體系統的技術研究與套用開發205
7.2超文本與超媒體206
7.2.1多媒體文檔206
7.2.2超文本與超媒體的概念207
7.2.3超文本與超媒體示例207
7.2.4超文本系統的體系結構208
7.3多媒體技術209
7.3.1音頻技術209
7.3.2圖像和圖形210
7.3.3視頻和動畫211
7.3.4多媒體數據壓縮技術212
7.4多媒體通信系統技術213
7.4.1多媒體通信系統體系結構213
7.4.2H.323電視會議214
7.4.3H.324可視電話215
7.4.4IP電話215
7.5多媒體創作工具215
7.5.1音樂製作215
7.5.2圖形與圖像製作216
7.5.3動畫製作217
7.5.4視頻影像處理217
7.5.5多媒體圖文製作218
7.5.6Web創作219
7.5.7文字的藝術修飾與多媒體演示文稿製作219
7.6多媒體編輯語言220
7.6.1HTML與DHTML220
7.6.2JavaScript220
7.6.3ASP221
7.6.4PHP221
7.6.5XML222
7.7虛擬現實技術223
7.7.1VRML223
7.7.2虛擬現實技術的套用225
7.8全息幻影225
7.8.1全息幻影的概念225
7.8.2360度全息幻影成像的特點225
本章小結226
習題226
第8章計算機網路及其套用229
8.1數據通信與連通性229
8.1.1數據通信與連通性的定義229
8.1.2連通方法229
8.1.3用戶端連線選項230
8.1.4通信信道231
8.1.5數據傳輸232
8.2計算機網路體系結構233
8.2.1計算機網路的定義233
8.2.2計算機網路的術語234
8.2.3計算機網路的結構234
8.2.4計算機網路的互聯設備237
8.3計算機網路的分類和使用方式237
8.3.1計算機網路的分類238
8.3.2構架計算機網路的策略238
8.4Internet與TCP/IP協定239
8.4.1Internet的起源240
8.4.2Internet的套用240
8.4.3Internet的工作方式240
8.4.4Internet中計算機的地址和命名241
8.4.5Internet的連線242
8.5Internet的服務功能242
8.5.1Email243
8.5.2討論組244
8.5.3FTP檔案傳輸245
8.5.4Telnet遠程登錄246
8.6Web和瀏覽器246
8.6.1Web246
8.6.2瀏覽器247
8.6.3搜尋引擎248
8.7區域網路的基礎構架249
8.7.1乙太網249
8.7.2令牌環網251
8.7.3FDDI網252
8.7.4ATM網252
8.7.5無線區域網路253
8.8物聯網253
8.8.1物聯網的基本概念254
8.8.2物聯網的組成255
8.8.3物聯網的相關技術255
8.8.4物聯網的套用模式與在我國的套用現狀257
8.9企業內部網和外聯網258
8.9.1內部網258
8.9.2外聯網258
8.10集群與格線技術259
8.10.1集群系統259
8.10.2格線259
本章小結260
習題261
第9章軟體工程263
9.1軟體工程的概念263
9.1.1為什麼提出軟體工程263
9.1.2什麼是軟體工程264
9.1.3軟體生存周期265
9.2軟體開發模型265
9.2.1瀑布模型266
9.2.2漸增模型266
9.2.3演化模型267
9.2.4螺旋模型267
9.2.5噴泉模型268
9.2.6轉換模型268
9.2.7智慧型模型268
9.3軟體開發方法269
9.3.1模組化方法269
9.3.2結構化方法269
9.3.3面向數據結構方法270
9.3.4面向對象方法271
9.3.5統一建模語言272
9.3.6軟體復用和構件技術274
9.4軟體過程和過程改進276
9.4.1軟體過程276
9.4.2軟體過程工程277
9.4.3軟體過程模型277
9.4.4軟體過程實施279
9.4.5軟體過程改進280
9.4.6軟體能力成熟度模型280
本章小結283
習題284
第10章計算機信息安全技術285
10.1計算機信息安全面臨的威脅285
10.1.1信息安全的重要性285
10.1.2安全問題的現狀285
10.1.3計算機信息安全的定義及威脅信息安全的手段286
10.1.4計算機信息安全的因素287
10.1.5信息安全的策略與網路安全體系結構288
10.2保密技術289
10.2.1保密防護技術與泄密發現技術289
10.2.2計算機系統的保密技術290
10.2.3Internet中使用的密碼技術293
10.3防禦技術294
10.3.1防火牆的概念295
10.3.2防火牆技術295
10.3.3防火牆的結構297
10.3.4身份鑑別和訪問許可權控制298
10.4虛擬專用網300
10.4.1什麼是VPN300
10.4.2VPN的分類及其用途301
10.5審計與監控技術302
10.5.1審計與監控的準則303
10.5.2審計與監控303
10.6計算機病毒305
10.6.1計算機病毒的定義305
10.6.2計算機病毒的發展305
10.6.3計算機病毒的檢測與防治307
10.7無線感測器網路與智慧卡的安全308
10.7.1無線感測器網路的安全308
10.7.2智慧卡的安全309
本章小結310
習題310
第11章計算機的套用領域312
11.1計算機在製造業中的套用312
11.1.1計算機輔助設計312
11.1.2計算機輔助製造313
11.1.3計算機集成製造系統314
11.2計算機在商業中的套用315
11.2.1零售業316
11.2.2電子數據交換316
11.2.3電子商務317
11.3計算機在銀行與證券業中的套用319
11.3.1電子貨幣319
11.3.2網上銀行與移動支付320
11.3.3證券市場信息化321
11.4計算機在交通運輸業中的套用321
11.4.1交通監控系統321
11.4.2坐席預定與售票系統322
11.4.3全球衛星定位系統322
11.4.4地理信息系統324
11.4.5智慧型交通系統325
11.4.6車載GPS智慧型導航系統326
11.5計算機在辦公自動化與電子政務中的套用328
11.5.1辦公自動化328
11.5.2電子政務328
11.6計算機在教育中的套用329
11.6.1校園網329
11.6.2遠程教育330
11.6.3計算機輔助教育331
11.6.4計算機教學管理系統331
11.7計算機在醫學中的套用331
11.7.1醫學專家系統332
11.7.2遠程醫療系統332
11.7.3數位化醫療儀器332
11.7.4病員監護與健康護理333
11.7.5醫學研究333
11.8計算機在科學研究中的套用333
11.8.1科技文獻的存儲與檢索333
11.8.2科學計算334
11.8.3計算機仿真335
11.9計算機在藝術與娛樂中的套用335
11.9.1音樂與舞蹈335
11.9.2美術與攝影335
11.9.3電影與電視336
11.9.4多媒體娛樂與遊戲336
本章小結337
習題337
第12章職業道德與擇業339
12.1信息產業界的道德準則339
12.1.1“綠色”信息產業339
12.1.2計算機科學技術專業人員的道德準則341
12.1.3企業道德準則342
12.1.4計算機用戶道德342
12.1.5安全與隱私343
12.2信息產業的法律法規345
12.2.1與計算機智慧財產權有關的法律法規345
12.2.2計算機軟體保護346
12.2.3軟體資產價值評估348
12.3專業崗位與擇業351
12.3.1與計算機科學與技術專業有關的職業種類351
12.3.2與計算機科學與技術專業有關的職位352
12.3.3終生學習353
本章小結354
習題355
參考文獻357