數據結構 十二五 普通高等教育本科国家级规划教材·十二五 江苏省高等学校重点教材:数据结构(Java版)(第4版)

葉核亞

  • 出版商: 電子工業
  • 出版日期: 2015-07-01
  • 定價: $270
  • 售價: 8.5$229
  • 語言: 簡體中文
  • 頁數: 327
  • 裝訂: 平裝
  • ISBN: 712126188X
  • ISBN-13: 9787121261886
  • 下單後立即進貨 (約4週~6週)

商品描述

 

<內容簡介>

葉核亞主編的《數據結構(Java版第4版十二五普通高等教育本科國家級規劃教材)》是「十二五」普通高等教育本科國家級規劃教材。
本書全面系統地介紹數據結構的基礎理論和演算法設計方法,包括線性表、樹、圖等數據結構以及查找和排序演算法。本書採用Java語言以面向對象方法設計並實現了全部的數據結構及演算法。本書精選基礎理論內容,重點是數據結構設計和演算法設計,通過降低理論難度和抽象性、加強實踐環節等措施,力求增強學生的理解能力和應用能力。本書內容涉及的廣度和深度符合本科培養目標的要求,配套教學資源豐富。
本書可作為普通高等學校電腦及相近專業本科的數據結構課程教材,也可作為從事電腦軟件開發和工程應用人員的參考書。

 

<章節目錄>

第1章  緒論
  1.1 數據結構的基本概念
    1.1.1 為什麼要學習數據結構
    1.1.2 什麼是數據結構
    1.1.3 數據類型與抽象數據類型
  1.2 演算法
    1.2.1 什麼是演算法
    1.2.2 演算法分析
    1.2.3 演算法設計
  習題1
  實驗1  演算法設計與分析
第2章  線性表
  2.1 線性表抽象數據類型
  2.2 線性表的順序存儲和實現
    2.2. 1線性表的順序存儲結構
    2.2.2 順序表
    2.2.3 排序順序表
  2.3 線性表的鏈式存儲和實現
    2.3.1 線性表的鏈式存儲結構
    2.3.2 單鏈表
    2.3.3 雙鏈表
  2.4 線性表應用:多項式的表示及運算
    2.4.1 一元多項式的表示及運算
    2.4.2 二元多項式的表示及運算
  習題2
  實驗2 線性表的基本操作
第3章  串
  3.1 串抽象數據類型
  3.2 串的存儲和實現
    3.2.1 串的存儲結構
    3.2.2 常量字符串類
    3.2.3 變量字符串類
  3.3 串的模式匹配
    3.3.1  Brute-Force演算法
    3.3.2 模式匹配應用
    3.3.3 KMP演算法
  習題3
  實驗3 串的基本操作及模式匹配演算法
第4章  棧和隊列
  4.1  棧
    4.1.1 棧抽象數據類型
    4.1.2 順序棧
    4.1.3 鏈式棧
    4.1.4 棧的應用
  4.2 隊列
    4.2.1 隊列抽象數據類型
    4.2.2 順序隊列
    4.2.3 鏈式隊列
    4.2.4 隊列的應用
    4.2.5 優先隊列

  4.3 遞歸
  習題4
  實驗4 棧和隊列以及遞歸演算法
第5章  數組和廣義表
  5.1  數組
  5.2 特殊矩陣的壓縮存儲
    5.2.1 三角矩陣、對稱矩陣和對角矩陣的壓縮存儲
    5.2.2 稀疏矩陣的壓縮存儲
  5.3 廣義表
    5.3.1 廣義表抽象數據類型
    5.3.2 廣義表的存儲結構
    5.3.3 廣義表雙鏈表示的實現
  習題5
  實驗5 特殊矩陣和廣義表的存儲和運算
第6章  樹和二叉樹
  6.1 樹及其抽象數據類型
    6.1.1 樹定義
    6.1.2 樹的術語
    6.1.3 樹抽象數據類型
  6.2 二叉樹
    6.2.1 二叉樹定義
    6.2.2 二叉樹性質
    6.2.3 二叉樹的遍歷規則
    6.2.4 二又樹抽象數據類型
    6.2.5 二又樹的存儲結構
    6.2.6 二叉樹的二又鏈表實現
  6.3 線索二叉樹
    6.3.1 線索二叉樹定義
    6.3.2 中序線索二叉樹
  6.4 Hu珩nan樹
    6.4.1 Huffman編碼
    6.4.2 Huffman樹及其構造演算法
  6.5 樹的表示和實現
    6.5.1 樹的遍歷規則
    6.5.2 樹的存儲結構
    6.5.3 樹的父母孩子兄弟鏈表實現
  習題6
  實驗6 樹和二叉樹的基本操作
第7章  圖
  7.1 圖及其抽象數據類型
    7.1.1 圖的基本概念
    7.1.2 圖抽象數據類型
  7.2 圖的表示和實現
    7.2.1 圖的鄰接矩陣表示和實現
    7.2.2 圖的鄰接表表示和實現
    7.2.3 圖的鄰接多重表表示
  7.3 圖的遍歷
    7.3.1 圖的深度優先搜索遍歷
    7.3.2 圖的廣度優先搜索遍歷
  7.4 最小生成樹

    7.4.1 生成樹
    7.4.2 最小生成樹的構造演算法
  7.5 最短路徑
    7.5.1 單源最短路徑
    7.5.2 每對頂點問的最短路徑
  習題7
  實驗7 圖的表示和操作
第8章  查找
  8.1 查找的基本概念
  8.2 二分法查找
  8.3 基於索引表的分塊查找
  8.4 散列
    8.4.1 散列表
    8.4.2 散列映射
  8.5 二叉排序樹和平衡二叉樹
    8.5.1 二叉排序樹
    8.5.2 樹映射
    8.5.3 平衡二叉樹
  習題8
  實驗8 查找演算法
第9章  排序
  9.1  插入排序
    9.1.1 直接插入排序
    9.1.2 希爾排序
  9.2 交換排序
    9.2.1 冒泡排序
    9.2.2 快速排序
  9.3 選擇排序
    9.3.1 直接選擇排序
    9.3.2 堆排序
  9.4 歸併排序
  9.5 線性表的排序演算法
    9.5.1 順序表的排序演算法
    9.5.2 單鏈表的排序演算法
    9.5.3 循環雙鏈表的排序演算法
  習題9
  實驗9 排序演算法設計及分析
第1O章  綜合應用設計
  10.1 JAVA集合框架
    10.1.1 compamtor比較器接口
    10.1.2 Arrays數組類
    10.1.3 集合
    10.1.4 映射
  10.2 實現迭代器
    1O.2.1 提供迭代器的類
    10.2.2 基於迭代器的操作
  10.3 演算法設計策略
    10.3.1 分治法
    10.3.2 動態規劃法
    10.3.3 貪心法

    10.3.4 同溯性
  10.4 課程設計的目的、要求和選題
附錄A ASCII字符與Unicode值
附錄B Java關鍵字
附錄C Java基本數據類型
附錄D Java運算符及其優先級
附錄E Java類庫(部分)
  E.1 iava.lang語言包
  E.2 iava.util實用包
附錄F MyEclipse常用菜單命令
參考文獻

 

<作者介紹>

編者:葉核亞

目錄大綱