目錄
第一篇 編程的一些問題
第一章 編程的步驟與要求
§1.1什么是程序、什么是軟件
§1.2編程的幾個階段
1.2.1編程的幾個階段
1.2.2研制大型軟件(程序)系統(tǒng)的幾點要求
§1.3程序設計的思維方法
1.3.1算法含義
1.3.2算法設計的基本思路
§1.4如何評價程序
第二章 結構化程序設計
§2.1一種新的編程方法
§2.2什么是結構化程序設計
§2.3結構化程序設計的方法
2.3.1不用或少用GOTO語句
2.3.2自頂向下,逐步求精
2.3.3分層結構與模塊結構
2.3.4組織形式
§2.4結構化系統(tǒng)分析與設計
2.4.1結構化系統(tǒng)分析
2.4.2結構化系統(tǒng)設計
第三章 結構化程序語言
§3.1程序設計語言分類
§3.2程序語言的選擇
§3.3結構化語言的特點
練習與思考題
參考文獻
第二篇 數據結構
第四章 數據結構基本概念
§4.1什么是數據結構
§4.2為什么要研究數據結構
§4.3數據結構分類
§4.4數據結構中若干常用術語
§4.5算法語言
第五章 向量和數組
§5.1向量
5.1.1向量的定義
5.1.2向量的物理表示
5.1.3向量的性質
5.1.4向量運算
§5.2數組
5.2.1數組的定義
5.2.2數組的物理表示
5.2.3效率問題
§5.3稀疏數組
第六章 棧與隊列
§6.1棧
6.1.1棧的定義與物理表示
6.1.2棧的運算
6.1.3多棧共享鄰接空間
§6.2棧的應用
§6.3隊列
6.3.1隊列的定義與物理表示
6.3.2隊列運算
§6.4循環(huán)隊
6.4.1循環(huán)隊的循環(huán)原理
6.4.2循環(huán)隊運算
§6.5隊列的應用
第七章 鏈 表
§7.1單向鏈表
7.1.1單向鏈表的結構形式
7.1.2鏈表運算
§7.2鏈表的存儲空間
§7.3鏈接的棧和隊列
§7.4循環(huán)鏈表
§7.5雙向鏈表
§7.6鏈表的應用——一元多項式相加
§7.7十字鏈表
§7.8廣義表及其應用
第八章 串
§8.1串的定義
§8.2串的物理表示
8.2.1串的順序表示法
8.2.2串的鏈表表示法
§8.3串的運算
§8.4串的模式匹配
§8.5串的插入算法
第九章 樹
§9.1樹的基本概念
9.1.1樹的定義
9.1.2樹的基本術語
9.1.3樹結構的表示方法
§9.2二叉樹
9.2.1二叉樹的定義
9.2.2二叉樹的性質
9.2.3二叉樹的物理表示
§9.3樹和森林轉換成二叉樹
9.3.1樹的二叉樹表示
9.3.2森林的二叉樹表示
§9.4遍歷二叉樹
9.4.1前序遍歷
9.4.2中序遍歷
9.4.3后序遍歷
§9.5線索二叉樹
9.5.1在二叉樹中尋找結點的前驅和后繼
9.5.2在線索樹中求結點的前驅和后繼
9.5.3二叉樹線索化算法
9.5.4結點插入中序線索二叉樹
§9.6哈夫曼樹
9.6.1樹的路徑長度
9.6.2哈夫曼樹及其算法
9.6.3哈夫曼樹的應用
§9.7樹的應用
9.7.1二叉分類樹
9.7.2判定樹
9.7.3集合的表示法
第十章 圖
§10.1圖的基本概念
§10.2圖的物理表示
10.2.1鄰接矩陣法
10.2.2鄰接表法
10.2.3鄰接多重表法
§10.3圖的遍歷與求圖的連通分量
10.3.1縱向優(yōu)先搜索法
10.3.2橫向優(yōu)先搜索法
10.3.3求圖的連通分量
§10.4生成樹和最小代價生成樹
10.4.1什么是生成樹和最小代價生成樹
10.4.2最小代價生成樹的構造方法
§10.5最短路徑
10.5.1從某個源點到其它頂點的最短路徑
10.5.2每對頂點間的最短路徑
§10.6拓撲排序
10.6.1AOV網絡與拓撲排序
10.6.2拓撲排序算法
§10.7關鍵路徑
10.7.1什么是關鍵路徑
10.7.2e(i)和l(i)的求法
10.7.3AOE網絡的關鍵活動
第十一章 排序與查找
§11.1排序
11.1.1排序文件的物理表示
11.1.2選擇排序
11.1.3冒泡排序
11.1.4線性插入排序
11.1.5折半插入排序
11.1.6希爾排序
11.1.7快速排序
11.1.8各種排序方法的比較
§11.2查找
11.2.1查找方法評價
11.2.2順序查找法
11.2.3折半查找法
11.2.4分塊查找法
11.2.5幾種基本查找方法的比較
§11.3哈希方法
11.3.1構造哈希函數的幾種方法
11.3.2處理沖突的方法
練習與思考題
參考文獻
第三篇 編譯技術
第十二章 編譯工作的基本概念
§12.1從源程序到目標程序
12.1.1源程序和目標程序
12.1.2匯編程序
12.1.3編譯程序
12.1.4解釋程序
§12.2編譯程序的工作過程
§12.3編譯程序與其它軟件工具
12.3.1編輯程序
12.3.2裝入程序與連接程序
12.3.3排錯程序
第十三章 詞法分析
§13.1單詞符號的種類和輸出形式
§13.2讀字符程序
13.2.1讀字符準備
13.2.2超前搜索問題
§13.3詞法分析的方法
13.3.1直接分析法
13.3.2狀態(tài)轉換圖法
第十四章 語法分析
§14.1語言定義與語法結構
14.1.1形式語言描述
14.1.2文法和語言種類
14.1.3文法如何定義語言
§14.2語法分析工作的內容
§14.3語法分析的方法
14.3.1優(yōu)先矩陣法
14.3.2優(yōu)先數法
14.3.3狀態(tài)矩陣法
14.3.4遞歸子程序法
§14.4各種語法分析方法的比較
第十五章 中間語言及其優(yōu)化
§15.1如何從單詞符號產生出中間語言
§15.2幾種常用的中間語言
15.2.1逆波蘭表示法
15.2.2四元組表示法
15.2.3三元組表示法
§15.3代碼優(yōu)化
第十六章 符號表和存儲分配
§16.1符號表的結構
§16.2符號表的組織及操作
16.2.1符號表的操作
16.2.2標識符的局部性問題及其處理
§16.3存儲空間分配
16.3.1靜態(tài)分配存儲單元
16.3.2動態(tài)分配存儲單元
第十七章 出錯處理
§17.1錯誤種類
17.1.1拼寫錯誤
17.1.2語法錯誤
17.1.3語義錯誤
§17.2錯誤處理
§17.3遏止株連信息和重復信息
17.3.1遏止株連信息
17.3.2遏止重復信息
練習與思考題
參考文獻
第四篇 計算機操作系統(tǒng)
第十八章 操作系統(tǒng)概論
§18.1設置操作系統(tǒng)的目的
18.1.1計算機的硬件組織
18.1.2軟件的層次和虛擬機的概念
18.1.3設置操作系統(tǒng)的目的
§18.2操作系統(tǒng)的發(fā)展過程
18.2.1手工操作階段
18.2.2早期批量處理階段
18.2.3管理程序階段
18.2.4多道程序的出現和操作系統(tǒng)的形成
§18.3操作系統(tǒng)的功能和類型
18.3.1多道批處理系統(tǒng)
18.3.2分時系統(tǒng)
18.3.3實時系統(tǒng)
第十九章 操作系統(tǒng)的基本功能
§19.1處理機管理
19.1.1中斷處理
19.1.2處理機調度(處理機分配)和進程調度
§19.2存儲管理
19.2.1存儲管理的功能
19.2.2界地址存儲管理
19.2.3虛擬存儲的基本概念
19.2.4分頁存儲管理
19.2.5分段存儲管理
19.2.6段頁結合存儲管理
19.2.7虛擬存儲管理中的存儲保護
§19.3設備管理
19.3.1外部設備分類和設備管理的功能
19.3.2外部設備的中斷
19.3.3分配和驅動外部設備
19.3.4實現虛擬設備
§19.4文件管理
19.4.1文件與文件管理系統(tǒng)
19.4.2文件組織
19.4.3文件的使用
§19.5操作系統(tǒng)的用戶界面
第二十章 幾種操作系統(tǒng)介紹
§20.1UNIX操作系統(tǒng)
20.1.1UNIX操作系統(tǒng)的特點
20.1.2UNIX操作系統(tǒng)的結構
20.1.3UNIX操作系統(tǒng)的進程管理與存儲管理
20.1.4UNIX操作系統(tǒng)的文件系統(tǒng)和設備管理
§20.2CP/M操作系統(tǒng)
20.2.1CP/M操作系統(tǒng)的結構
20.2.2CP/M操作系統(tǒng)的文件管理
20.2.3CP/M操作系統(tǒng)的發(fā)展
20.2.4PC—DOS簡介
§20.3分布式操作系統(tǒng)
20.3.1分布式計算機系統(tǒng)概述
20.3.2分布式操作系統(tǒng)的特點
練習與思考題
參考文獻
第五篇 數據庫系統(tǒng)
第二十一章 數據庫系統(tǒng)概述
§21.1數據庫的概念
§21.2數據管理方法的發(fā)展
21.2.1人工管理階段
21.2.2文件系統(tǒng)階段
21.2.3數據庫系統(tǒng)階段
§21.3數據庫技術的應用
§21.4數據模型
21.4.1層次模型
21.4.2網狀模型
21.4.3關系模型
§21.5數據庫系統(tǒng)的構成
21.5.1數據庫系統(tǒng)
21.5.2數據庫管理系統(tǒng)
§21.6數據庫數據的存取過程
第二十二章 關系模型的數據庫系統(tǒng)
§22.1基本概念
22.1.1笛卡爾積和關系
22.1.2關系數據語言的分類
§22.2關系代數
22.2.1傳統(tǒng)的集合運算
22.2.2專門的關系運算
22.2.3檢索操作
22.2.4存儲操作
§22.3關系演算
22.3.1元組關系演算
22.3.2域關系演算
§22.4介于關系代數與關系演算之間的語言SQL
§22.5關系數據語言的特點
§22.6關系數據庫的模式和子模式
22.6.1模式
22.6.2子(外)模式
§22.7查詢優(yōu)化概述
22.7.1查詢優(yōu)化問題的提出
22.7.2優(yōu)化的一般策略
§22.8關系模式的規(guī)范化
22.8.1關系的規(guī)范化與范式
22.8.2函數依賴和碼(關鍵字)
22.8.32NF
22.8.43NF
22.8.5BCNF(Boyce-Codd范式)
第二十三章 ORACLE關系數據庫系統(tǒng)
§23.1概述
§23.2用戶友好接口UFI
23.2.1SQL和UFI
23.2.2索引和聚集
23.2.3數據控制
23.2.4報表格式輸出
23.2.5UFI命令
§23.3交互式應用工具IAF
23.3.1IAG使用概述
23.3.2IAP的調用
§23.4宿主語言接口HLI
第二十四章 網狀模型的數據庫系統(tǒng)
§24.1CODASYL系統(tǒng)的總體結構
§24.2CODASYL系統(tǒng)的數據模型
24.2.1記錄類型
24.2.2系類型
24.2.3系值
24.2.4CODASYL系統(tǒng)對事物聯(lián)系的表示方法
§24.3記錄的存放方法
24.3.1域
24.3.2數據庫碼
24.3.3運行單位與當前值
24.3.4記錄的定位方式
§24.4系類型的描述及其實現
24.4.1系序原則
24.4.2屬籍類別
24.4.3系值選擇
24.4.4系值內有關記錄值的連接實現
§24.5模式數據描述語言
§24.6子模式數據描述語言
§24.7數據操縱語言
第二十五章 數據庫的保護
§25.1安全性
§25.2數據的完整性
§25.3并發(fā)控制
§254數據庫的恢復
第二十六章 數據庫設計
§26.1數據庫設計過程
§26.2數據字典
第二十七章 分布式數據庫系統(tǒng)概述
§27.1定義與分類
§27.2分布式數據庫系統(tǒng)的幾個主要問題
27.2.1數據分布
27.2.2并發(fā)操作控制
27.2.3查詢處理
27.2.4恢復處理
練習與思考題
參考文獻