資料結構和演算法概述

2022-01-15 05:59:56 字數 1064 閱讀 6645

資料 data 結構(structure)是一門研究組織資料方式的學科,有了程式語言也就有了資料結構.學好資料結構可以 編寫出更加漂亮,更加有效率的**。

要學習好資料結構就要多多考慮如何將生活中遇到的問題,用程式去實現解決.

程式 = 資料結構 + 演算法

資料結構是演算法的基礎, 換言之,想要學好演算法,需要把資料結構學到位。

需要使用到單鏈表資料結構

如何判斷遊戲的輸贏,並可以完成存檔退出和繼續上局的功能

棋盤 二維陣列=>(稀疏陣列)-> 寫入檔案 【存檔功能】

讀取檔案-》稀疏陣列-》二維陣列 -》 棋盤 【接上局】

josephu 問題為:設編號為 1,2,… n 的 n 個人圍坐一圈,約定編號為 k(1<=k<=n)的人從 1 開始報數,數 到 m 的那個人出列,它的下一位又從 1 開始報數,數到 m 的那個人又出列,依次類推,直到所有人出列為止, 由此產生乙個出隊編號的序列。

小結:完成約瑟夫問題,需要使用到單向環形鍊錶 這個資料結構

修路問題 => 最小生成樹(加權值)【資料結構】+ 普利姆演算法

最短路徑問題 => 圖+弗洛伊德演算法

漢諾塔 => 分支演算法

八皇后問題 => 回溯法

資料結構包括:線性結構和非線性結構。

線性結構作為最常用的資料結構,其特點是資料元素之間存在一對一的線性關係

線性結構有兩種不同的儲存結構,即順序儲存結構(陣列)和鏈式儲存結構(鍊錶)。順序儲存的線性表稱為順序 表,順序表中的儲存元素是連續的

鏈式儲存的線性表稱為鍊錶,鍊錶中的儲存元素不一定是連續的,元素節點中存放資料元素以及相鄰元素的地 址資訊

線性結構常見的有:陣列、佇列、鍊錶和棧。

非線性結構包括:二維陣列,多維陣列,廣義表,樹結構,圖結構

資料結構和演算法概述

資料結構是對在計算機記憶體 有時在磁碟中 中的資料的一種安排。資料結構包括陣列,鍊錶,棧,二叉樹,雜湊表等。演算法是對這些結構中的資料進行各種處理。對於大多數資料結構來說,都需要知道如下操作 1.插入一條新的資料項 2.尋找某一特定資料項 3.刪除某一特定資料項 4.迭代訪問某一資料結構中的各資料項...

資料結構和演算法概述

1.什麼是資料結構,什麼是演算法 資料結構指一組資料的儲存結構。演算法就是運算元據的一組方法。2.常用的資料結構 陣列 鍊錶 棧 佇列 雜湊表 二叉樹 堆 跳表 圖 trie 樹。3.常用的演算法 遞迴 排序 二分查詢 搜尋 雜湊演算法 貪心演算法 分治演算法 回溯演算法 動態規劃 字串匹配演算法 ...

資料結構和演算法概述

資料結構 data structure 是帶有結構特性的資料元素的組合。它研究的是資料的邏輯結構和資料的物理結構以及它們之間的相互關係,並對這種結構定義相適應的運算,設計出相應的演算法,並確保經過這些運算以後所得到的新結構仍保持原來的資料型別。簡而言之,資料結構是相互之間存在一種或多種特定關係的資料...