計(jì)算機(jī)軟件技術(shù)基礎(chǔ)(第四版)
定 價(jià):39.5 元
叢書(shū)名:新世紀(jì)計(jì)算機(jī)基礎(chǔ)教育叢書(shū)
- 作者:徐士良,葛兵 著
- 出版時(shí)間:2014/9/1
- ISBN:9787302357193
- 出 版 社:清華大學(xué)出版社
- 中圖法分類:TP31
- 頁(yè)碼:355
- 紙張:膠版紙
- 版次:4
- 開(kāi)本:16K
《計(jì)算機(jī)軟件技術(shù)基礎(chǔ)(第四版)(新世紀(jì)計(jì)算機(jī)基礎(chǔ)教育叢書(shū)(譚浩強(qiáng)主編)》針對(duì)高等學(xué)校的大學(xué)生、研究生以及科技工作者與研究人員學(xué)習(xí)計(jì)算機(jī)軟件應(yīng)用技術(shù)的需要,介紹了計(jì)算機(jī)軟件設(shè)計(jì)的基礎(chǔ)知識(shí)、方法與實(shí)用技術(shù)。書(shū)中主要內(nèi)容包括集合與算法的基本概念、基本數(shù)據(jù)結(jié)構(gòu)及其運(yùn)算、查找與排序技術(shù)、資源管理技術(shù)、數(shù)據(jù)庫(kù)設(shè)計(jì)技術(shù)、編譯技術(shù)概述、應(yīng)用軟件設(shè)計(jì)與開(kāi)發(fā)技術(shù)。每章都配有一定數(shù)量的習(xí)題。
《計(jì)算機(jī)軟件技術(shù)基礎(chǔ)(第四版)(新世紀(jì)計(jì)算機(jī)基礎(chǔ)教育叢書(shū)(譚浩強(qiáng)主編)》內(nèi)容豐富、通俗易懂、實(shí)用性強(qiáng),可作為高等學(xué)校的教材,也可作為廣大從事計(jì)算機(jī)應(yīng)用工作的科技人員的參考書(shū)。
本書(shū)第二版是普通高等教育“十一五”國(guó)家級(jí)規(guī)劃教材,并被評(píng)為2008年度普通高等教育精品教材。
本次修訂保持了前三版的特點(diǎn),在第三版的基礎(chǔ)上進(jìn)行了如下幾方面的調(diào)整與修改。
(1) 所有算法程序均采用C++語(yǔ)言進(jìn)行描述。由于C++語(yǔ)言既可用于面向過(guò)程的程序設(shè)計(jì),又支持面向?qū)ο蟮某绦蛟O(shè)計(jì),因此,作者在對(duì)算法進(jìn)行描述時(shí),盡量采用最合適的程序設(shè)計(jì)方法。例如,對(duì)于同一批數(shù)據(jù)進(jìn)行同類操作的單個(gè)算法采用面向過(guò)程的方法;對(duì)于基本的數(shù)據(jù)結(jié)構(gòu)(如順序存儲(chǔ)與鏈?zhǔn)酱鎯?chǔ)的線性表、棧、隊(duì)列等)采用面向?qū)ο蟮姆椒,將?shù)據(jù)與運(yùn)算封裝成類,以便在其他應(yīng)用程序中直接使用。這樣,書(shū)中的所有算法都可以直接在實(shí)際應(yīng)用中方便地使用。
(2) 在第2章的2.7節(jié)中增加了最短距離問(wèn)題的內(nèi)容。
(3) 在第3章中增加了字符串匹配的內(nèi)容。
本書(shū)內(nèi)容豐富、通俗易懂、實(shí)用性強(qiáng),書(shū)中所有算法程序均上機(jī)調(diào)試通過(guò)。本書(shū)可作為高等學(xué)校的大學(xué)生或研究生軟件課程的教材,也可作為廣大從事計(jì)算機(jī)應(yīng)用工作的科技人員的參考書(shū)。
由于作者水平有限,書(shū)中難免有錯(cuò)誤或不妥之處,懇請(qǐng)讀者批評(píng)指正。
作者
本書(shū)第二版是普通高等教育“十一五”國(guó)家級(jí)規(guī)劃教材,并被評(píng)為2008年度普通高等教育精品教材。
本次修訂保持了第二版的特點(diǎn)(見(jiàn)第二版前言),主要在內(nèi)容上作了如下幾方面的調(diào)整。
(1) 在第1章中增加了集合方面的基本知識(shí),對(duì)算法方面的基本內(nèi)容進(jìn)行了適當(dāng)?shù)木?jiǎn)。
(2) 在第2章中增加了索引存儲(chǔ)結(jié)構(gòu)的內(nèi)容。
(3) 在第5章中刪去了關(guān)系數(shù)據(jù)庫(kù)語(yǔ)言SQL的內(nèi)容。
(4) 新增加了編譯技術(shù)概述一章。
本書(shū)內(nèi)容豐富、通俗易懂、實(shí)用性強(qiáng),書(shū)中所有算法程序均上機(jī)調(diào)試通過(guò)。本書(shū)可作為大學(xué)生或研究生的軟件技術(shù)基礎(chǔ)課程的教材,也可作為廣大從事計(jì)算機(jī)應(yīng)用工作的科技人員的參考書(shū)。
由于作者水平有限,書(shū)中難免有錯(cuò)誤或不妥之處,懇請(qǐng)讀者批評(píng)指正。
作者
高等學(xué)校非計(jì)算機(jī)專業(yè)的學(xué)生(包括廣大科技人員)如何學(xué)習(xí)和掌握軟件技術(shù),是一個(gè)很重要的問(wèn)題。他們不可能像計(jì)算機(jī)專業(yè)的學(xué)生那樣學(xué)習(xí)軟件的各門(mén)課程,因此有必要將主要的軟件技術(shù)和知識(shí)在一門(mén)課程中介紹,但又不能是拼盤(pán)式的組合。國(guó)外根本沒(méi)有這樣的教材,國(guó)內(nèi)這樣的教材也不多。有的教材雖然名稱叫“軟件技術(shù)”,但實(shí)際上是一些新軟件的使用。本教材介紹的是軟件技術(shù),而不是軟件的使用。
本教材主要針對(duì)高等學(xué)校非計(jì)算機(jī)專業(yè)的學(xué)生學(xué)習(xí)計(jì)算機(jī)軟件技術(shù)的需要,介紹有關(guān)軟件基礎(chǔ)知識(shí)及應(yīng)用技術(shù)。其特點(diǎn)如下:
(1) 系統(tǒng)性。本教材不是將計(jì)算機(jī)專業(yè)各門(mén)課程的內(nèi)容簡(jiǎn)單地拼裝在一起,而是針對(duì)學(xué)生對(duì)軟件應(yīng)用技術(shù)的需要,將其有機(jī)結(jié)合,為讀者提供軟件開(kāi)發(fā)中所需要的軟件知識(shí)和技術(shù)。全書(shū)以數(shù)據(jù)結(jié)構(gòu)與算法為基礎(chǔ),以軟件技術(shù)為線索,系統(tǒng)性較強(qiáng)。
(2) 強(qiáng)調(diào)應(yīng)用。本教材強(qiáng)調(diào)以應(yīng)用為目的,書(shū)中實(shí)例比較豐富,內(nèi)容圍繞解決軟件開(kāi)發(fā)中所遇到的軟件技術(shù)問(wèn)題來(lái)展開(kāi)。在介紹系統(tǒng)軟件(如操作系統(tǒng))時(shí),為了便于讀者理解,也適當(dāng)介紹一些原理,但主要還是介紹實(shí)現(xiàn)系統(tǒng)軟件中的技術(shù),以便讀者將這些技術(shù)用到應(yīng)用軟件的開(kāi)發(fā)中。
(3) 可讀性強(qiáng)。本書(shū)深入淺出,通過(guò)實(shí)例引出基本概念,便于讀者接受。
此次對(duì)本書(shū)的修訂主要是前三章。書(shū)中所有的算法均采用C++描述。由于C++語(yǔ)言既可用于面向過(guò)程的程序設(shè)計(jì),又支持面向?qū)ο蟮某绦蛟O(shè)計(jì),因此,作者在對(duì)算法進(jìn)行描述時(shí),盡量采用最合適的程序設(shè)計(jì)方法。例如,對(duì)于基本的數(shù)據(jù)結(jié)構(gòu)(如順序存儲(chǔ)與鏈?zhǔn)酱鎯?chǔ)的線性表、棧、隊(duì)列等)采用面向?qū)ο蟮姆椒,將?shù)據(jù)與運(yùn)算封裝成類,以便在其他應(yīng)用程序中直接使用;而對(duì)于同一批數(shù)據(jù)進(jìn)行同類操作的各種算法(如對(duì)線性表的各種排序方法)則采用面向過(guò)程的方法,將各種不同的算法用普通函數(shù)來(lái)描述。這樣,書(shū)中的所有算法都可以直接應(yīng)用。
本書(shū)內(nèi)容豐富、通俗易懂、實(shí)用性強(qiáng),書(shū)中所有算法程序(C++描述)均上機(jī)調(diào)試通過(guò)。本書(shū)可作為非計(jì)算機(jī)專業(yè)的大學(xué)生或研究生軟件課程的教材,也可作為廣大從事計(jì)算機(jī)應(yīng)用工作的科技人員的參考書(shū)。
由于作者水平有限,書(shū)中難免有錯(cuò)誤或不妥之處,懇請(qǐng)讀者批評(píng)指正。
作者
隨著計(jì)算機(jī)技術(shù)的深入發(fā)展,計(jì)算機(jī)技術(shù)的應(yīng)用已經(jīng)滲透到各個(gè)領(lǐng)域,特別是計(jì)算機(jī)軟件的設(shè)計(jì)與開(kāi)發(fā),已經(jīng)不只是計(jì)算機(jī)專業(yè)人員的事情了,F(xiàn)在,越來(lái)越多的軟件需要非計(jì)算機(jī)專業(yè)的人員來(lái)設(shè)計(jì)與開(kāi)發(fā),很多系統(tǒng)軟件與應(yīng)用軟件由非計(jì)算機(jī)專業(yè)人員來(lái)使用,并在此基礎(chǔ)上進(jìn)行二次開(kāi)發(fā)。因此,普及計(jì)算機(jī)軟件技術(shù)已經(jīng)是大勢(shì)所趨。
本書(shū)在《軟件應(yīng)用技術(shù)基礎(chǔ)》(該書(shū)由清華大學(xué)出版社出版,獲電子工業(yè)部?jī)?yōu)秀教材一等獎(jiǎng))一書(shū)的基礎(chǔ)上改寫(xiě)而成,可滿足廣大非計(jì)算機(jī)專業(yè)的學(xué)生學(xué)習(xí)軟件設(shè)計(jì)與開(kāi)發(fā)的需要。作為應(yīng)用計(jì)算機(jī)的科技人員,除了要掌握現(xiàn)有計(jì)算機(jī)軟件的使用外,從實(shí)際應(yīng)用出發(fā),還必須要掌握軟件設(shè)計(jì)與開(kāi)發(fā)的基本知識(shí)和有關(guān)技術(shù),如數(shù)據(jù)的組織、程序的組織、計(jì)算機(jī)資源的利用、數(shù)據(jù)的處理技術(shù)等,以便得心應(yīng)手地進(jìn)行應(yīng)用軟件的設(shè)計(jì)與開(kāi)發(fā)。
全書(shū)共分6章,每章后面都附有一定數(shù)量的習(xí)題。
第1章介紹算法。內(nèi)容主要包括算法的基本概念、算法的基本設(shè)計(jì)方法、算法的復(fù)雜度分析等內(nèi)容。
第2章介紹基本數(shù)據(jù)結(jié)構(gòu)及其運(yùn)算。內(nèi)容主要包括數(shù)據(jù)結(jié)構(gòu)的基本概念,線性表、棧、隊(duì)列及其在順序存儲(chǔ)結(jié)構(gòu)下的運(yùn)算和應(yīng)用,線性鏈表及其運(yùn)算,數(shù)組,二叉樹(shù)的概念、存儲(chǔ)及其應(yīng)用,圖的存儲(chǔ)及其遍歷。
第3章介紹常用的查找與排序技術(shù)。內(nèi)容主要包括基本的查找技術(shù)、哈希表技術(shù)、基本的排序技術(shù)、二叉排序樹(shù)及其查找、多層索引樹(shù)及其查找、拓?fù)浞诸悺?br />第4章介紹資源管理技術(shù)。內(nèi)容主要包括操作系統(tǒng)的功能與任務(wù)、多道程序設(shè)計(jì)、存儲(chǔ)空間的組織。
第5章介紹數(shù)據(jù)庫(kù)技術(shù)。內(nèi)容主要包括數(shù)據(jù)庫(kù)基本概念、關(guān)系代數(shù)、數(shù)據(jù)庫(kù)設(shè)計(jì)、關(guān)系數(shù)據(jù)庫(kù)語(yǔ)言SQL。
第6章介紹應(yīng)用軟件設(shè)計(jì)與開(kāi)發(fā)技術(shù)。內(nèi)容主要包括軟件工程概述、軟件詳細(xì)設(shè)計(jì)的表達(dá)、結(jié)構(gòu)化分析與設(shè)計(jì)方法、測(cè)試與調(diào)試基本技術(shù)、軟件開(kāi)發(fā)新技術(shù)。
本書(shū)內(nèi)容豐富、通俗易懂、實(shí)用性強(qiáng),書(shū)中所有算法程序均上機(jī)調(diào)試通過(guò)。本書(shū)可作為高等學(xué)校非計(jì)算機(jī)專業(yè)的大學(xué)生或研究生軟件課程的教材,也可作為廣大從事計(jì)算機(jī)應(yīng)用工作的科技人員的參考書(shū)。
由于作者水平有限,書(shū)中難免有錯(cuò)誤或不妥之處,懇請(qǐng)讀者批評(píng)指正。作者
預(yù)備知識(shí)1.1集合1
1.1.1集合及其基本運(yùn)算1
1.1.2自然數(shù)集與數(shù)學(xué)歸納法3
1.1.3笛卡兒積5
1.1.4二元關(guān)系5
1.2算法6
1.2.1算法的基本概念6
1.2.2算法設(shè)計(jì)基本方法8
1.2.3算法的復(fù)雜度分析13
習(xí)題15
基本數(shù)據(jù)結(jié)構(gòu)及其運(yùn)算 2.1數(shù)據(jù)結(jié)構(gòu)的基本概念17
2.1.1什么是數(shù)據(jù)結(jié)構(gòu)17
2.1.2數(shù)據(jù)結(jié)構(gòu)的圖形表示20
2.2線性表及其順序存儲(chǔ)結(jié)構(gòu)22
2.2.1線性表及其運(yùn)算22
2.2.2棧及其應(yīng)用31
2.2.3隊(duì)列及其應(yīng)用41
2.3線性鏈表52
2.3.1線性鏈表的基本概念52
2.3.2線性鏈表的插入與刪除56
2.3.3帶鏈的棧與隊(duì)列61
2.3.4循環(huán)鏈表68
2.3.5多項(xiàng)式的表示與運(yùn)算71
2.4線性表的索引存儲(chǔ)結(jié)構(gòu)78
2.4.1索引存儲(chǔ)的概念782.4.2“順序?索引?順序”存儲(chǔ)方式80
2.4.3“順序?索引?鏈接”存儲(chǔ)方式81
2.4.4多重索引存儲(chǔ)結(jié)構(gòu)82
2.5數(shù)組83
2.5.1數(shù)組的順序存儲(chǔ)結(jié)構(gòu)83
2.5.2規(guī)則矩陣的壓縮83
2.5.3一般稀疏矩陣的表示86
2.6樹(shù)與二叉樹(shù)112
2.6.1樹(shù)的基本概念112
2.6.2二叉樹(shù)及其基本性質(zhì)115
2.6.3二叉樹(shù)的遍歷118
2.6.4二叉樹(shù)的存儲(chǔ)結(jié)構(gòu)119
2.6.5穿線二叉樹(shù)124
2.6.6表達(dá)式的線性化136
2.7圖138
2.7.1圖的基本概念138
2.7.2圖的存儲(chǔ)結(jié)構(gòu)139
2.7.3圖的遍歷143
2.7.4最短距離問(wèn)題144
2.7.5圖鄰接表類146
習(xí)題155
查找與排序技術(shù)3.1基本的查找技術(shù)158
3.1.1順序查找158
3.1.2有序表的對(duì)分查找158
3.1.3分塊查找163
3.2哈希表技術(shù)164
3.2.1哈希表的基本概念164
3.2.2幾種常用的哈希表167
3.3基本的排序技術(shù)185
3.3.1冒泡排序與快速排序185
3.3.2簡(jiǎn)單插入排序與希爾排序190
3.3.3簡(jiǎn)單選擇排序與堆排序192
3.3.4其他排序方法簡(jiǎn)介195
3.4二叉排序樹(shù)及其查找1993.4.1二叉排序樹(shù)的基本概念200
3.4.2二叉排序樹(shù)的插入201
3.4.3二叉排序樹(shù)的刪除202
3.4.4二叉排序樹(shù)查找204
3.5多層索引樹(shù)及其查找206
3.5.1B-樹(shù)207
3.5.2B+樹(shù)217
3.6拓?fù)浞诸?27
3.7字符串匹配229
3.7.1字符串的基本概念229
3.7.2字符串匹配的KMP算法230
習(xí)題235
資源管理技術(shù)4.1操作系統(tǒng)的概念237
4.1.1操作系統(tǒng)的功能與任務(wù)237
4.1.2操作系統(tǒng)的發(fā)展過(guò)程238
4.1.3操作系統(tǒng)的分類241
4.2多道程序設(shè)計(jì)244
4.2.1并發(fā)程序設(shè)計(jì)244
4.2.2進(jìn)程247
4.2.3進(jìn)程之間的通信251
4.2.4多道程序的組織256
4.3存儲(chǔ)空間的組織257
4.3.1內(nèi)存儲(chǔ)器的管理技術(shù)257
4.3.2外存儲(chǔ)器中文件的組織結(jié)構(gòu)261
習(xí)題268
數(shù)據(jù)庫(kù)設(shè)計(jì)技術(shù)5.1數(shù)據(jù)庫(kù)基本概念269
5.1.1數(shù)據(jù)庫(kù)技術(shù)與數(shù)據(jù)庫(kù)系統(tǒng)269
5.1.2數(shù)據(jù)描述274
5.1.3數(shù)據(jù)模型276
5.2關(guān)系代數(shù)280
5.3數(shù)據(jù)庫(kù)設(shè)計(jì)286
5.3.1數(shù)據(jù)庫(kù)設(shè)計(jì)的基本概念286
5.3.2數(shù)據(jù)庫(kù)設(shè)計(jì)的過(guò)程287
5.3.3數(shù)據(jù)字典293
習(xí)題295
編譯技術(shù)概述6.1編譯程序的工作過(guò)程及其基本組成297
6.1.1編譯程序的工作過(guò)程297
6.1.2編譯程序的基本組成298
6.2狀態(tài)矩陣法的編譯過(guò)程299
6.2.1狀態(tài)矩陣法的基本原理299
6.2.2狀態(tài)矩陣的壓縮300
6.3詞法分析302
6.3.1詞法分析的任務(wù)302
6.3.2讀字符程序303
6.3.3狀態(tài)矩陣法的詞法分析過(guò)程304
6.3.4算術(shù)常數(shù)的識(shí)別和翻譯307
6.4中間語(yǔ)言表示310
6.4.1波蘭表示310
6.4.2三元組表示312
6.5語(yǔ)法的分析與加工316
習(xí)題321
應(yīng)用軟件設(shè)計(jì)與開(kāi)發(fā)技術(shù)7.1軟件工程概述322
7.1.1軟件工程的概念322
7.1.2軟件生命周期322
7.1.3軟件支援環(huán)境325
7.2軟件詳細(xì)設(shè)計(jì)的表達(dá)326
7.2.1程序流程圖326
7.2.2NS圖327
7.2.3問(wèn)題分析圖PAD329
7.2.4判定表329
7.2.5過(guò)程設(shè)計(jì)語(yǔ)言PDL330
7.3結(jié)構(gòu)化分析與設(shè)計(jì)方法331
7.3.1應(yīng)用軟件開(kāi)發(fā)的原則和方法331
7.3.2結(jié)構(gòu)化分析方法332
7.3.3結(jié)構(gòu)化設(shè)計(jì)方法336
7.4測(cè)試與調(diào)試基本技術(shù)342
7.4.1測(cè)試342
7.4.2調(diào)試349
7.5軟件開(kāi)發(fā)新技術(shù)351
7.5.1原型方法351
7.5.2瀑布模型352
7.5.3面向?qū)ο蠹夹g(shù)353
習(xí)題354
參考文獻(xiàn)355