資料結構與c++程式設計進階.pptVIP

  • 14
  • 0
  • 约4.59千字
  • 约 32页
  • 2016-08-08 发布于天津
  • 举报
資料結構與c程式設計進階

單向鏈結串列 用途: (1) 不知道資料個數時 (2) 資料常需要隨時插入或刪除, 為了效率考量時 單向鏈結串列之結構如下圖所示 head:指向串列前端之指標 * … 鏈結起點 鏈結終點 head NULL 鏈結串列-通訊錄程式實作 我們可以使用鏈結串列來實作個有效率且能有效利用記憶體空間之通訊錄程式 head:指向串列前端之指標 * … 鏈結起點 鏈結終點 head Andy 0919.. Andy@... Joe 0958.. Joe@... Mary 0937.. Mary@... NULL 堆疊與佇列 堆疊(Stack) 用途:後進先出(LIFO)之資料特性 例子:發撲克牌、走迷宮 佇列(Queue) 用途:先進先出(FIFO)之資料特性 例子:排隊問題、資源使用順序控制 * 堆疊-自動走迷宮程式 使用堆疊結構實作走迷宮問題 走法: 每次都把目前位置存到堆疊, 然後走下一步 下一步順序: 上,下,左,右 無路可走: 從堆疊中取出上一位置, 看看有沒路走 * 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 0 0 0 0 0 0 0 1 1 1 1 1 1 0 1 0 1 1 1 0 0 1 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 0 0 入口 出口 佇列-排隊與插隊問題 優先佇列 (Priority Queues) 許多排隊場合不一定是先到先贏, 例如: 搭飛機時排隊進飛機艙, 會先請頭等艙先進入, 在依會員等集進入, 這時的排隊應該有優先順序問題 下圖會員分三等級(A,B,C級), A級優先權較高, B第二, C最低, 如何完成這個特殊的排隊問題? * 樹狀結構 「樹」(Tree) 是一種模擬現實生活中樹幹和樹枝的資料結構,屬於一種階層架構的非線性資料結構,例如:家族族譜, 決策模型 用途:資料大量且常需要做搜索時 * 樹狀結構:二元搜尋樹 如何利用樹狀結構實作一個快速的搜尋法? 以下的數都只有左右兩個分支, 左分支的數字一定比右分支大, 在一堆數字當中, 如果你要找20這個數字, 該如何找? 為什麼比較快呢? 試著跟一般陣列或鏈結串列比較 * 10 5 20 1 8 15 30 1 5 8 10 15 20 30 圖形結構 「圖形」(Graph) 是由有限的「頂點」(Vertex)和邊線所組成。通常使用小圓圈代表頂點,頂點之間的連線代表「邊線」(Edge) 用途: (1) 資料間關係較為複雜時 (2) 找各種最佳問題之解答 例子: 車站系統實作 最短路徑問題 最低成本問題 * 圖形結構-最短路徑問題 計算圖形內某一個頂點到另一個圖形間的「最短路徑」(Shortest Paths)。 * 共195km 圖形結構-最低成本問題 有五個村莊, 之間沒有任何道路, 如果你想造一些路, 讓一個村裝有辦法到任一個村莊, 如何打造「最低成本」(Minimum Cost)的路呢? * 2萬 4萬 3萬 10萬 15萬 6萬 8萬 5萬 圖形結構-最低成本問題 使用最小成本擴張樹(Minimum-cost Spanning Trees)來解此問題, 得到如下結果: * 2萬 3萬 6萬 5萬 共16萬元 * 課程大綱 基礎複習 程式語言 資料內容與位置 指標與動態記憶體配置 結構 資料結構與演算法 陣列與串列 常見的資料結構與應用 * 程式設計 程式語言? 語法介於人與電腦之間,用來命令電腦做事的一種語言! 人類: 中文, 英文, … 電腦: 寫程式的主要兩個動作: 宣告資料儲存空間 操作資料 * 控制 (邏輯), 運算 (數學) 儲存資料 資料內容與位置 資料儲存的單位 用來宣告一塊空間,儲存資料內容的單位:變數 用來宣告一塊空間,儲存資料位置的單位:指標 儲存很多相同型態的資料:陣列 儲存很多不同型態的資料:結構 (或C++的類別) 資料的存取 直接存取:變數、陣列、結構 (或C++的類別) 間接存取:指標 儲存空間的產生 靜態:程式一開始就產生 (宣告)  動態:程式執行中跟系統要求而產生 使用指標取得動態記憶體配置之位置 * 儲存資料 練習 使用鍵盤輸入五個整數,印出平均於螢幕。 思考: 你用了什麼資料儲存單位?你用了什麼方式操作它們?為什麼你這樣做? * 指標的概念 用途:儲存另一個資料的位置,然後間接操作它 * 資料內容 有名稱可用:直接用a 70 間接找到資料並使用 名稱:a int 我要使用70那個整數… 你要的資料在0x1000位置! 0x1000 int * 不知道名稱: 透過指標! 位置:(不重要) 名稱:p 位置:0x

文档评论(0)

1亿VIP精品文档

相关文档