第1章 資料結構與演算法概述

2021-10-08 05:19:40 字數 998 閱讀 4194

1.3 線性結構&非線性結構

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

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

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

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

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

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

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

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

漢諾塔 => 分支演算法

八皇后問題 => 回溯法

線性結構

非線性結構

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

線性結構有兩種不同的儲存結構:

(1)順序儲存結構(陣列)

(2)鏈式儲存結構(鍊錶)

順序儲存的線性表稱為順序表,順序表中的儲存元素是連續的

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

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

《資料結構與演算法》 浙大MOOC)第1章 概論

include include include clock t start,stop double duration define maxn 10 多項式最大項數,即多項式階數 1 define maxk 1e7 被測函式最大重複呼叫次數 doublef1 int n,double a,double...

資料結構與演算法概述

研一結束了,馬上要進入研二的生活了。接下來就要進入了找工作的階段。在網上查詢了各種找工作的面經,發現資料結構是應聘軟體行業必考的內容之一,並在資料結構在對自己的軟體設計水平的提高也有很大的幫助,所以從今天開始將進行資料結構的學習。在學習一樣東西之前,先要明白其含義。資料結構的定義如下 我們如何把現實...

資料結構與演算法概述

資料型別 程式語言中的資料型別是指具有預定義值得乙個資料集合,常見的資料型別有 整數型,浮點型,字串,字元等。一般有兩種資料型別 系統定義的資料型別 基本資料型別 使用者自定義的資料型別 使用者自定義的類,可以將系統定義的資料型別進行組合封裝成使用者需要的資料型別 class student 資料結...