數據結構與算法(C語言版)

數據結構與算法(C語言版)
定價:192
NT $ 192
 

內容簡介

本書將基本的算法設計技術和數據結構很好地結合起來,第1章介紹數據結構和算法在程序設計中的作用,以及數據結構和算法的基本概念;第2章以初等數論作為應用實例介紹基本的算法設計技術,使學生初步理解常用的蠻力法、分治法、減治法、貪心法、動態規划法等算法設計技術的設計思想;第3~7章依次介紹線性表、棧和隊列、字符串和多維數組、樹和二叉樹、圖等數據結構,並從算法設計技術的角度討論數據結構的基本操作;第8章和第9章是常用數據處理技術,包括查找和排序,並從算法設計技術的角度闡述查找和排序的算法思想和設計過程。《數據結構與算法(C語言版工程創新型十二五規划計算機精品教材普通高等教育十二五規划教材)》內容豐富,層次清晰,深入淺出,可作為高等學校計算機及相關專業數據結構課程的教材,也可供從事計算機軟件開發和應用的工程技術人員閱讀、參考。
 

目錄

第1章 緒論
1.1 問題求解與程序設計
1.1.1 程序設計的一般過程
1.1.2 數據結構在程序設計中的作用
1.1.3 算法在程序設計中的作用
1.1.4 本書討論的主要內容
1.2 數據結構的基本概念
1.2.1 數據結構
1.3 算法的基本概念
1.3.1 算法及其重要特性
1.3.2 算法的描述方法
1.4 算法分析
1.4.1 算法的時間復雜度
1.4.2 算法的空間復雜度
1.4.3 算法分析舉例
習題1
第2章 基本算法設計技術
2.1 蠻力法
2.1.1 蠻力法的設計思想
2.1.2 算法設計實例——數字迷
2.2 分治法
2.2.1 分治法的設計思想
2.2.2 算法設計實例——數字旋轉方陣
2.3 減治法
2.3.1 減治法的設計思想
2.3.2 算法設計實例——假幣問題
2.4 貪心法
2.4.1 貪心法的設計思想
2.4.2 算法設計實例——埃及分數
2.5 動態規划法
2.5.1 動態規划法的設計思想
2.5.2 算法設計實例——數塔問題
習題2
第3章 線性表
3.1 引言
3.2 線性表的邏輯結構
3.2.1 線性表的定義
3.2.2 線性表的抽象數據類型定義
3.3 線性表的存儲結構及實現
3.3.1 順序表
3.3.2 單鏈表
3.3.3 雙鏈表
3.3.4 循環鏈表
3.3.5 靜態鏈表
3.3.6 順序表和鏈表的比較
3.4 應用實例
3.4.1 約瑟夫環問題
3.4.2 一元多項式求和
習題3
第4章 棧和隊列
4.1 引言
4.2 棧
4.2.1 棧的邏輯結構
4.2.2 棧的順序存儲結構及實現
4.2.3 棧的鏈接存儲結構及實現
4.2.4 順序棧和鏈棧的比較
4.3 隊列
4.3.1 隊列的邏輯結構
4.3.2 隊列的順序存儲結構及實現
4.3.3 隊列的鏈接存儲結構及實現
4.2.4 循環隊列和鏈隊列的比較
4.4 應用舉例
4.4.1 括號匹配問題
4.4.2 表達式求值
習題4
第5章 字符串和多維數組
5.1 引言
5.2 字符串
5.2.1 字符串的邏輯結構
5.2.2 字符串的存儲結構
5.2.3 模式匹配
5.3 多維數組
5.3.1 數組的邏輯結構
5.3.2 數組的存儲結構與尋址
5.4 矩陣的壓縮存儲
5.4.1 對稱矩陣的壓縮存儲
5.4.2 三角矩陣的壓縮存儲
5.4.3 對角矩陣的壓縮存儲
5.4.4 稀疏矩陣的壓縮存儲
5.5 應用實例
5.5.1 發紙牌
5.5.2 八皇後問題
習題5
第6章 樹和二叉樹
6.1 引言
6.2 樹的邏輯結構
6.2.1 樹的定義和基本術語
6.2.2 樹的抽象數據類型定義
6.2.3 樹的遍歷操作
6.3 樹的存儲結構
6.3.1 雙親表示法
6.3.2 孩子表示法
6.3.3 孩子兄弟表示法
6.4 二叉樹的邏輯結構
6.4.1 二叉樹的定義
6.4.2 二叉樹的基本性質
6.4.3 二叉樹的抽象數據類型定義
6.4.4 二叉樹的遍歷操作
6.5 二叉樹的存儲結構
6.5.1 順序存儲結構
6.5.2 二叉鏈表
6.5.3 三叉鏈表
6.5.4 線索鏈表
6.6 二叉樹遍歷的非遞歸算法
6.6.1 前序遍歷非遞歸算法
6.6.2 中序遍歷非遞歸算法
6.6.3 後序遍歷非遞歸算法
6.7 樹、森林與二叉樹的轉換
6.8 應用實例
6.8.1 文件系統
6.8.2 哈夫曼樹及哈夫曼編碼
習題6
第7章 圖
7.1 引言
7.2 圖的邏輯結構
7.2.1 圖的定義和基本術語
7.2.2 圖的抽象數據類型定義
7.2.3 圖的遍歷操作
7.3 圖的存儲結構及實現
7.3.1 鄰接矩陣
7.3.2 鄰接表
7.3.3 鄰接矩陣和鄰接表的比較
7.4 最小生成樹
7.4.1 Prim算法
7.4.2 Kruskal算法
7.5 最短路徑
7.5.1 Dijkstra算法
7.5.2 Floyd算法
7.6 有向無環圖及其應用
7.6.1 AOV網與拓撲排序
7.6.2 AOE網與關鍵路徑
7.7 應用實例
7.7.1 七巧板塗色問題
7.7.2 醫院選址問題
習題7
第8章 查找技術
8.1 概述
8.1.1 查找的基本概念
8.1.2 查找算法的性能
8.2 線性表的查找技術
8.2.1 順序查找
8.2.2 折半查找
8.2.3 分塊查找
8.3 樹表的查找技術
8.3.1 二叉排序樹
8.3.2 平衡二叉樹
8.3.3 B-樹
8.3.4 B+樹
8.4 散列表的查找技術
8.4.1 概述
8.4.2 散列函數的設計
8.4.3 處理沖突的方法
8.4.4 散列查找的性能分析
8.4.5 開散列表與閉散列表的比較
8.5 各種查找方法的比較
習題8
第9章 排序技術
9.1 概述
9.1.1 排序的基本概念
9.1.2 排序算法的性能
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.5 歸並排序
9.5.1 二路歸並排序的遞歸實現
9.5.2 二路歸並排序的非遞歸實現
9.6 分配排序
9.6.1 桶式排序
9.6.2 基數排序
9.7 各種排序方法的比較
習題9
附錄A 詞匯索引
附錄B 計算機學科碩士研究生入學考試專業基礎綜合考試大綱(數據結構部分)
參考文獻
網路書店 類別 折扣 價格
  1. 新書
    $192