《計算機軟件技術(shù)基礎(chǔ)(第2版)/高等教育規(guī)劃教材》是在全國教育科學(xué)“十一五”規(guī)劃課題《應(yīng)用型大學(xué)發(fā)展與學(xué)科專業(yè)建設(shè)研究》教學(xué)研究成果的基礎(chǔ)上,基于北京市高等教育精品教材建設(shè)項目和校本科規(guī)劃教材建設(shè)項目的建設(shè)成果,根據(jù)高等院校非計算機專業(yè)對計算機軟件技術(shù)的知識要求,結(jié)合多年的教學(xué)和實踐經(jīng)驗集體編寫而成的。
全書共分10章,內(nèi)容包括計算機軟件基礎(chǔ)概論、數(shù)據(jù)結(jié)構(gòu)概述、數(shù)據(jù)的線性結(jié)構(gòu)、樹、圖、查找、內(nèi)部排序、操作系統(tǒng)、軟件工程和數(shù)據(jù)庫技術(shù)的基礎(chǔ)知識。附錄中結(jié)合理論知識,編寫了實用的實驗案例,供讀者參考。
《計算機軟件技術(shù)基礎(chǔ)(第2版)/高等教育規(guī)劃教材》講解清晰,內(nèi)容系統(tǒng),實例豐富,既可作為高等院校本、?朴嬎銠C軟件技術(shù)基礎(chǔ)教材,又可作為各類計算機應(yīng)用人員或相關(guān)人員的技術(shù)參考書。
注重實踐性和應(yīng)用性,強調(diào)培養(yǎng)學(xué)生的實踐應(yīng)用能力。結(jié)合案例教學(xué)的特點將抽象理論具體化,加深學(xué)生對知識的理解。
隨著計算機應(yīng)用領(lǐng)域的擴大和深入,工程技術(shù)人員掌握必要的計算機軟件技術(shù)基礎(chǔ)知識成為提高計算機應(yīng)用水平的重要途徑之一。
本次修訂根據(jù)高等院校非計算機專業(yè)對計算機軟件技術(shù)的知識要求,在知識內(nèi)容、邏輯體系的優(yōu)化、知識關(guān)聯(lián)度、實例程序的統(tǒng)一調(diào)試等方面做了進一步的完善。
全書共分10章,內(nèi)容涉及與計算機軟件有關(guān)的基礎(chǔ)知識和一些常用的系統(tǒng)軟件。第1章計算機軟件技術(shù)基礎(chǔ)概論,主要介紹了計算機軟件技術(shù)基礎(chǔ)概論的相關(guān)知識;第2章數(shù)據(jù)結(jié)構(gòu)概述,主要介紹了數(shù)據(jù)結(jié)構(gòu)的概念、數(shù)據(jù)的邏輯結(jié)構(gòu)與存儲結(jié)構(gòu)、數(shù)據(jù)類型與抽象數(shù)據(jù)類型、算法的概念、時間和空間復(fù)雜度以及算法的描述方法;第3章線性結(jié)構(gòu),主要介紹了線性表順序存儲的基礎(chǔ)知識及運算,線性鏈表基本概念和結(jié)構(gòu)特征及其操作運算,堆棧、隊列的基本概念和結(jié)構(gòu)特征及其應(yīng)用,其他線性結(jié)構(gòu)的存儲結(jié)構(gòu)與應(yīng)用實例;第4章樹和第5章圖,主要介紹了非線性數(shù)據(jù)結(jié)構(gòu)樹和圖的基本知識與相關(guān)應(yīng)用;第6章查找,主要介紹了查找的一些基本方法;第7章內(nèi)部排序,主要介紹了排序的基本概念、內(nèi)部排序的主要算法及時空效率分析,最后通過實例講解了相關(guān)內(nèi)容;第8章操作系統(tǒng),主要介紹了操作系統(tǒng)的工作原理;第9章軟件工程,主要介紹了軟件工程的相關(guān)知識;第10章數(shù)據(jù)庫技術(shù),主要介紹了數(shù)據(jù)庫原理和應(yīng)用;附錄軟件技術(shù)基礎(chǔ)實驗,提供了課程實踐的相關(guān)內(nèi)容。
本書的主要特色:
1)注重基礎(chǔ)知識的講解,內(nèi)容由淺入深,重點與難點突出,主要知識內(nèi)容各部分既相互獨立,又存在必要的聯(lián)系。重點講授軟件基本原理、技術(shù)、方法和工具。
2)按照國家對應(yīng)用型人才培養(yǎng)的要求,注重實踐性和應(yīng)用性,強調(diào)培養(yǎng)學(xué)生的實踐應(yīng)用能力。結(jié)合案例教學(xué)的特點將抽象理論具體化,加深學(xué)生對知識的理解。本書選用最常用的C語言,適合于各類工程技術(shù)人員學(xué)習(xí)和實踐。
3)滿足學(xué)生深造的需求,在深入研究工學(xué)類、管理學(xué)類、理學(xué)類、經(jīng)濟學(xué)類等學(xué)科大類領(lǐng)域的計算機基礎(chǔ)知識和計算機應(yīng)用能力的需求基礎(chǔ)上,本書重點突出和完善數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)庫技術(shù)和軟件工程應(yīng)用等相關(guān)知識內(nèi)容,為學(xué)生進一步深造打下良好的基礎(chǔ)。
本書第1~4章、第6~7章由李平、胡立栓編寫,第5、10章由王秀英編寫,第8章由胡立栓、王育平編寫,第9章由孫雪編寫,附錄由胡立栓編寫。全書由李平、胡立栓統(tǒng)稿。
由于時間倉促,書中難免有疏漏之處,懇請各位讀者批評指正。
出版說明
前言
第1章 計算機軟件技術(shù)基礎(chǔ)概論
1.1 計算機基礎(chǔ)
1.1.1 計算機的發(fā)展概況
1.1.2 計算機的基本組成
1.1.3 計算機的應(yīng)用
1.2 計算機軟件基礎(chǔ)
1.2.1 計算機軟件的基本概念
1.2.2 計算機語言
1.3 計算機軟件技術(shù)的發(fā)展
1.4 軟件的設(shè)計方法
1.5 程序設(shè)計的基本算法與應(yīng)用
1.5.1 迭代法與應(yīng)用
1.5.2 遞推法與應(yīng)用
1.5.3 遞歸法與應(yīng)用
1.5.4 窮舉法與應(yīng)用
1.5.5 回溯法與應(yīng)用
1.5.6 貪婪法與應(yīng)用
1.5.7 分治法與應(yīng)用
1.6 習(xí)題
第2章 數(shù)據(jù)結(jié)構(gòu)概述
2.1 數(shù)據(jù)結(jié)構(gòu)基本知識
2.1.1 數(shù)據(jù)結(jié)構(gòu)的概念
2.1.2 數(shù)據(jù)的邏輯結(jié)構(gòu)與存儲結(jié)構(gòu)
2.1.3 數(shù)據(jù)類型與抽象數(shù)據(jù)類型
2.2 算法分析
2.2.1 算法的概念
2.2.2 時間復(fù)雜度和空間復(fù)雜度的概念
2.2.3 算法的描述
2.3 習(xí)題
第3章 線性結(jié)構(gòu)
3.1 線性表順序存儲及運算
3.1.1 線性表的基本概念
3.1.2 順序表的基本概念和結(jié)構(gòu)特征
3.1.3 順序表的算法
3.1.4 順序表算法編程實例
3.2 棧及其應(yīng)用
3.2.1 棧的基本概念和結(jié)構(gòu)特征
3.2.2 棧的基本運算
3.2.3 棧的應(yīng)用
3.3 隊列及其應(yīng)用
3.3.1 隊列的基本概念和結(jié)構(gòu)特征
3.3.2 隊列的基本運算
3.3.3 隊列的應(yīng)用
3.4 線性鏈表及其運算
3.4.1 鏈表的基本概念和結(jié)構(gòu)特征
3.4.2 單鏈表
3.4.3 線性鏈表算法編程實例
3.5 其他線性結(jié)構(gòu)
3.5.1 串的定義和串的存儲方式
3.5.2 定長順序串運算
3.5.3 二維數(shù)組的結(jié)構(gòu)特點和存儲方式
3.5.4 矩陣和特殊矩陣元素的存儲結(jié)構(gòu)與應(yīng)用實例
3.5.5 稀疏矩陣的壓縮存儲方式和簡單運算實例
3.6 習(xí)題
第4章 樹
4.1 樹的概念
4.1.1 樹結(jié)構(gòu)數(shù)據(jù)舉例
4.1.2 樹的定義
4.1.3 樹的基本術(shù)語
4.2 二叉樹的基本概念和主要性質(zhì)
4.2.1 二叉樹的基本概念
4.2.2 二叉樹的主要性質(zhì)
4.3 二叉樹的存儲
4.3.1 順序存儲方式
4.3.2 鏈?zhǔn)酱鎯Ψ绞?br />
4.4 二叉樹的遍歷
4.4.1 二叉樹遍歷的概念
4.4.2 二叉樹遍歷的算法
4.4.3 二叉樹遍歷算法應(yīng)用舉例
4.5 二叉樹的應(yīng)用
4.6 樹與森林
4.6.1 樹的存儲方法
4.6.2 樹和森林與二叉樹的轉(zhuǎn)換
4.6.3 樹與森林的遍歷
4.7 習(xí)題
第5章 圖
5.1 圖的基本概念
5.2 圖的存儲結(jié)構(gòu)
5.2.1 鄰接矩陣
5.2.2 鄰接表
5.3 圖的遍歷
5.3.1 深度優(yōu)先搜索
5.3.2 廣度優(yōu)先搜索
5.4 圖的應(yīng)用
5.4.1 生成樹和最小生成樹
5.4.2 最短路徑
5.4.3 AOV網(wǎng)與拓撲排序
5.5 習(xí)題
第6章 查找
6.1 查找的基本概念
6.1.1 查找的相關(guān)概念
6.1.2 查找的基本思想
6.2 查找方法和算法
6.2.1 順序查找
6.2.2 有序表的二分查找
6.2.3 分塊查找
6.3 二叉排序樹的查找算法
6.3.1 二叉排序樹的基本概念
6.3.2 二叉排序樹的運算
6.4 散列表查找
6.4.1 散列表的基本概念
6.4.2 常用的散列函數(shù)的構(gòu)造方法
6.4.3 處理沖突的方法
6.5 習(xí)題
第7章 內(nèi)部排序
7.1 排序的基本思想和基本概念
7.2 內(nèi)部排序的主要算法及時空效率分析
7.2.1 直接插入排序
7.2.2 希爾排序
7.2.3 冒泡排序
7.2.4 直接選擇排序
7.2.5 歸并排序
7.2.6 快速排序
7.2.7 堆排序
7.3 內(nèi)部排序?qū)嵗?br />
7.4 習(xí)題
第8章 操作系統(tǒng)
8.1 操作系統(tǒng)的形成與發(fā)展
8.1.1 "手工操作"階段
8.1.2 聯(lián)機批處理
8.1.3 脫機批處理
8.1.4 執(zhí)行系統(tǒng)
8.2 操作系統(tǒng)的定義、 特征和功能
8.2.1 操作系統(tǒng)的定義
8.2.2 操作系統(tǒng)的特征
8.2.3 操作系統(tǒng)的功能
8.3 操作系統(tǒng)的分類
8.3.1 批處理操作系統(tǒng)
8.3.2 分時操作系統(tǒng)
8.3.3 實時操作系統(tǒng)
8.3.4 網(wǎng)絡(luò)操作系統(tǒng)
8.3.5 分布式操作系統(tǒng)
8.4 處理機管理
8.4.1 多道程序設(shè)計的概念
8.4.2 進程的概念
8.4.3 進程的并發(fā)控制
8.4.4 進程通信
8.4.5 死鎖
8.5 存儲管理
8.5.1 存儲管理概述
8.5.2 地址重定位
8.5.3 實存儲器管理技術(shù)
8.5.4 虛擬存儲管理技術(shù)
8.6 文件管理
8.6.1 文件系統(tǒng)概述
8.6.2 文件的結(jié)構(gòu)
8.6.3 文件目錄
8.6.4 存儲空間的分配
8.7 習(xí)題
第9章 軟件工程
9.1 軟件工程概述
9.1.1 軟件工程的形成和發(fā)展
9.1.2 軟件工程的內(nèi)容和目的
9.1.3 軟件生命周期
9.1.4 軟件過程模型
9.2 軟件的需求定義
9.2.1 軟件可行性研究
9.2.2 需求分析定義概述
9.2.3 結(jié)構(gòu)化分析方法
9.2.4 數(shù)據(jù)流圖
9.2.5 數(shù)據(jù)字典
9.2.6 加工規(guī)格說明
9.3 軟件設(shè)計
9.3.1 軟件設(shè)計概述
9.3.2 軟件設(shè)計原則
9.3.3 軟件設(shè)計方法
9.4 軟件編程
9.4.1 軟件編程概述
9.4.2 軟件編程風(fēng)格
9.5 軟件測試
9.5.1 軟件測試概述
9.5.2 測試用例的設(shè)計
9.5.3 軟件測試步驟
9.6 軟件維護
9.7 習(xí)題
第10章 數(shù)據(jù)庫技術(shù)
10.1 數(shù)據(jù)庫系統(tǒng)概述
10.1.1 數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展
10.1.2 數(shù)據(jù)庫系統(tǒng)基本術(shù)語
10.1.3 數(shù)據(jù)模型
10.2 關(guān)系數(shù)據(jù)庫基本理論
10.2.1 關(guān)系的定義
10.2.2 關(guān)系模型的常用術(shù)語
10.2.3 關(guān)系代數(shù)
10.2.4 關(guān)系的完整性
10.3 數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)
10.3.1 數(shù)據(jù)庫的三級模式
10.3.2 數(shù)據(jù)庫的兩級映像
10.4 數(shù)據(jù)庫設(shè)計
10.4.1 數(shù)據(jù)庫設(shè)計過程
10.4.2 需求分析
10.4.3 概念結(jié)構(gòu)設(shè)計
10.4.4 邏輯結(jié)構(gòu)設(shè)計
10.4.5 物理結(jié)構(gòu)設(shè)計
10.4.6 數(shù)據(jù)庫實施
10.4.7 數(shù)據(jù)庫運行與維護
10.5 關(guān)系模式的規(guī)范化
10.5.1 問題的提出
10.5.2 函數(shù)依賴和鍵
10.5.3 關(guān)系模式的范式與規(guī)范化
10.6 SQL Server使用初步
10.6.1 SQL Server的管理工具和使用方法
10.6.2 數(shù)據(jù)庫中主要對象
10.6.3 SQL 初步
10.7 習(xí)題
附錄 軟件技術(shù)基礎(chǔ)實驗
實驗一 斐波那契數(shù)列的實現(xiàn)算法及分析
實驗二 順序表的實現(xiàn)和應(yīng)用
實驗三 鏈表的實現(xiàn)和應(yīng)用
實驗四 棧的實現(xiàn)和應(yīng)用
實驗五 二叉樹的創(chuàng)建和遍歷
實驗六 哈夫曼樹及哈夫曼編碼
實驗七 查找算法的實現(xiàn)
實驗八 內(nèi)部排序算法的實現(xiàn)
實驗九 數(shù)據(jù)庫應(yīng)用
參考文獻