幫助中心 | 我的帳號 | 關於我們

圖解數據結構(使用C#)

  • 作者:編者:吳燦銘//胡昭民
  • 出版社:清華大學
  • ISBN:9787302528722
  • 出版日期:2019/07/01
  • 裝幀:平裝
  • 頁數:442
人民幣:RMB 79 元      售價:
放入購物車
加入收藏夾

內容大鋼
    這是一本綜合講述數據結構及其演算法的入門書,全書採用圖文講解的方式,力求讀者易於學習和掌握。
    全書從基本的數據結構概念開始講起,包括數組結構、隊列、堆棧、樹形結構、排序、查找等;接著介紹常用的演算法,包括分治法、遞歸法、貪心法、動態規劃法、迭代法、枚舉法、回溯法等,併為每個經典的演算法都提供了C#程序設計語言編寫的完整範例程序;最後在每章末尾都安排了大量的習題,這些題目包含各類考試的例題,希望讀者能靈活地應用所學的各種知識。
    本書圖文並茂,敘述簡潔、清晰,範例豐富,可操作性強,針對具有一定編程能力又想提高編程「深度」的非信息專業類人員或學生,是一本數據結構普及型的教科書或自學參考書。

作者介紹
編者:吳燦銘//胡昭民

目錄
第1章  數據結構與演算法
  1.1  數據結構的定義
    1.1.1  數據與信息
    1.1.2  數據的特性
  1.2  演算法
    1.2.1  到處都是演算法
    1.2.2  演算法的定義
  1.3  演算法性能分析
    1.3.1  Big-oh
    1.3.2  Ω(omega)
    1.3.3  θ(theta)
  1.4  常見演算法介紹
    1.4.1  分治法
    1.4.2  遞歸法
    1.4.3  貪心法
    1.4.4  動態規劃法
    1.4.5  迭代法
    1.4.6  枚舉法
  1.5  程序設計簡介
    1.5.1  程序開發流程
    1.5.2  結構化程序設計
    1.5.3  面向對象程序設計
  課後習題
第2章  數組結構
  2.1  線性表簡介
  2.2  認識數組
    2.2.1  一維數組
    2.2.2  二維數組
    2.2.3  三維數組
    2.2.4  n維數組
  2.3  矩陣
    2.3.1  矩陣相加
    2.3.2  矩陣相乘
    2.3.3  轉置矩陣
    2.3.4  稀疏矩陣
    2.3.5  上三角形矩陣
    2.3.6  下三角形矩陣
    2.3.7  帶狀矩陣
  2.4  數組與多項式
  課後習題
第3章  鏈表
  3.1  動態分配內存
  3.2  單向鏈表
    3.2.1  建立單向鏈表
    3.2.2  單向鏈表節點的刪除
    3.2.3  單向鏈表插入新節點
    3.2.4  單向鏈表的反轉
    3.2.5  單向鏈表的串接
    3.2.6  多項式鏈表表示法
  3.3  環形鏈表

    3.3.1  環形鏈表新節點的插入
    3.3.2  環形鏈表中節點的刪除
    3.3.3  環形鏈表的串接
    3.3.4  疏矩陣鏈表表示法
  3.4  雙向鏈表
    3.4.1  雙向鏈表的定義
    3.4.2  雙向鏈表節點的插入
    3.4.3  雙向鏈表節點的刪除
  課後習題
第4章  堆棧
  4.1  堆棧簡介
    4.1.1  用數組來實現堆棧
    4.1.2  用鏈表來實現堆棧
  4.2  堆棧的應用
    4.2.1  漢諾塔問題
    4.2.2  老鼠走迷宮
    4.2.3  八皇后問題
  4.3  算術表達式的求值法(對應于表達式的表示法)
    4.3.1  中序表示法求值
    4.3.2  前序表示法求值
    4.3.3  後序表示法求值
  4.4  中序法轉換為前序法
    4.4.1  二叉樹法
    4.4.2  括弧法
    4.4.3  堆棧法
  4.5  前序與後序表達式轉換成中序表達式
    4.5.1  括弧法
    4.5.2  堆棧法
  課後習題
第5章  隊列
  5.1  認識隊列
    5.1.1  隊列的基本操作
    5.1.2  用數組實現隊列
    5.1.3  用鏈表實現隊列
  5.2  隊列的應用
    5.2.1  環形隊列
    5.2.2  雙向隊列
    5.2.3  優先隊列
  課後習題
第6章  樹
  6.1  樹的基本概念
  6.2  二叉樹簡介
    6.2.1  二叉樹的定義
    6.2.2  特殊二叉樹簡介
  6.3  二叉樹存儲方式
    6.3.1  一維數組表示法
    6.3.2  鏈表表示法
  6.4  二叉樹遍歷
    6.4.1  中序遍歷
    6.4.2  後序遍歷

    6.4.3  前序遍歷
    6.4.4  二叉樹遍歷的實現
    6.4.5  二叉運算樹
  6.5  二叉樹的高#研究
    6.5.1  二叉排序樹
    6.5.2  二叉查找樹
    6.5.3  線索二叉樹
  6.6  樹的二叉樹表示法
    6.6.1  樹轉化為二叉樹
    6.6.2  樹林轉化為二叉樹
    6.6.3  樹與森林的遍歷
    6.6.4  確定#一二叉樹
  6.7  優化二叉查找樹
    6.7.1  擴充二叉樹
    6.7.2  霍夫曼樹
  6.8  平衡樹
    6.8.1  平衡樹的定義
    6.8.2  B樹
  課後習題
第7章  圖
  7.1  圖論簡介
    7.1.1  圖的定義
    7.1.2  無向圖
    7.1.3  有向圖
  7.2  圖的數據表示法
    7.2.1  鄰接矩陣法
    7.2.2  鄰接鏈表法
    7.2.3  鄰接複合鏈表法
    7.2.4  索引表格法
  7.3  圖的遍歷
    7.3.1  深度優先法
    7.3.2  廣度優先查找法
  7.4  生成樹
  7.5  #小生成樹
    7.5.1  Prim演算法
    7.5.2  Kruskal演算法
  7.6  圖的#短路徑
    7.6.1  單點對全部頂點——Dijkstra演算法與A*演算法
    7.6.2  兩兩頂點間的#短路徑——Floyd演算法
  7.7  AOV網路與拓撲排序
  7.8  AOE網路
  課後習題
第8章  排序
  8.1  排序簡介
    8.1.1  排序的分類
    8.1.2  排序演算法分析
  8.2  內部排序法
    8.2.1  冒泡排序法
    8.2.2  選擇排序法
    8.2.3  插入排序法

    8.2.4  希爾排序法
    8.2.5  合併排序法
    8.2.6  快速排序法
    8.2.7  堆積排序法
    8.2.8  基數排序法
  8.3  外部排序法
    8.3.1  直接合併排序法
    8.3.2  k路合併法
    8.3.3  多相合併法
  課後習題
第9章  查找
  9.1  常見的查找方法
    9.1.1  順序查找法
    9.1.2  二分查找法
    9.1.3  插值查找法
    9.1.4  斐波拉契查找法
  9.2  哈希查找法
  9.3  常見的哈希法
    9.3.1  除留餘數法
    9.3.2  平方取中法
    9.3.3  摺疊法
    9.3.4  數字分析法
  9.4  碰撞與溢出問題的處理
    9.4.1  線性探測法
    9.4.2  平方探測法
    9.4.3  再哈希法
    9.4.4  鏈表法
    9.4.5  哈希法綜合範例
  課後習題
附錄A  C#開發環境與指令摘要
  A.1  Visual Studio Community 2017軟體下載與安裝
  A.2  創建#一個控制台項目
  A.3  C# 語言重要指令的簡介
    A.3.1  註釋指令
    A.3.2  控制台應用程序輸入/輸出指令
    A.3.3  變數與常數
    A.3.4  數組的聲明與使用
    A.3.5  數組的排序
    A.3.6  隨機數的使用
    A.3.7  數據類型轉換
    A.3.8  對象與類
    A.3.9  靜態類與靜態欄位
附錄B  習題答案

  • 商品搜索:
  • | 高級搜索
首頁新手上路客服中心關於我們聯絡我們Top↑
Copyrightc 1999~2008 美商天龍國際圖書股份有限公司 臺灣分公司. All rights reserved.
營業地址:臺北市中正區重慶南路一段103號1F 105號1F-2F
讀者服務部電話:02-2381-2033 02-2381-1863 時間:週一-週五 10:00-17:00
 服務信箱:bookuu@69book.com 客戶、意見信箱:cs@69book.com
ICP證:浙B2-20060032