資料結構的起源 1. 數值計算與非數值計算
2. 資料結構是一門研究非數值計算的程式設計問題中的操作物件,以及他們之間的關係和操作等相關問題的學科。
3. 程式設計 = 資料結構+演算法
什麼是資料 資料是描述客觀事物的符號,是計算機中可以操作的物件,是能被計算機識別,並輸入給計算機處理的符合集合。而這些符號必須具備倆個前提
(1)可以輸入到計算機中
(2)能被電腦程式處理
資料元素 資料元素是組成資料的基本單位,在計算機常被作為整體處理(為了更好的理解,可以把資料元素看成小的分子)。比如在r集中的,每乙個實數就是r的乙個資料元素。
資料項 上面提到資料元素,而資料項就是組成資料元素的單位,資料項不可再分(可以看作是原子)。但是在研究我們資料結構的時候,是基於分子的,即資料元素本身。
資料物件 是性質相同的資料元素的集合,是資料的子集。所謂性質相同是指資料元素的資料項具有相同的結構。資料物件一般意義上成為資料.
在搞清了上面幾個概念後,那什麼是資料結構呢? 資料結構,是用來描述資料的,是相互之間存在一種或多種特定關係的資料元素的集合,其研究的是非數值的計算。
資料結構有倆種模式,一種是邏輯結構(指資料物件中資料元素之間的相互關係),另一種是儲存結構(指資料的邏輯結構在計算機中儲存形式)
邏輯結構又可以分為集合結構,線性結構(一對一),樹形結構(一對多),網狀結構(多對多)
集合結構:結構中的資料元素之間除了同屬於乙個集合的關係外,無任何其它關係。
線性結構:結構中的資料元素之間存在著一對一的線性關係。
樹型結構:結構中的資料元素之間存在著一對多的層次關係。
圖狀結構或網狀結構:結構中的資料元素之間存在著多對多的任意關係。
儲存結構可以分為順序儲存結構和鏈式儲存結構。
線性儲存結構是指資料元素存放在位址連續的儲存單元裡,其資料間的邏輯關係和物理關係是一致的。例如陣列。
抽象資料型別 資料型別:一組性質相同的值的集合,以及定義在此集合上的一些操作(運算)的總稱。
抽象資料型別:abstract data type,adt;乙個數學模型及定義在該模型上的一組操作。adt只與邏輯有關,與具體在計算機中的表示和實現無關。 一種抽象型別包括 資料物件中各元素間的關係、一組基本操作、資料物件
好多朋友不知道資料結構和資料型別的關係,在這裡我簡要說一下。 資料型別必須依賴於語言,而資料結構則不需要,我們說資料型別時是針對某個值來說,某個值是哪種型別,int,double...
資料結構和演算法是密不可分的。在下次筆記中我們將談到演算法,包括演算法的基本概念,時間複雜度等。
資料結構 筆記(一)
資料結構分為四類 集合 元素間無內在關係 線性 一對一關係 樹型 一對多關係 圖型 多對多關係 儲存方式 順序儲存 連續,類似於排隊 鏈式儲存 可以不連續,通過儲存其他元素位址可得到,類似於醫院叫號 演算法要素 輸入,輸出,有窮性,確定性 不會有二意 可行性 演算法要求 正確性 1.無語法錯誤 2....
資料結構 筆記(一)
資料結構分為四類 集合 元素間無內在關係 線性 一對一關係 樹型 一對多關係 圖型 多對多關係 儲存方式 順序儲存 連續,類似於排隊 鏈式儲存 可以不連續,通過儲存其他元素位址可得到,類似於醫院叫號 演算法要素 輸入,輸出,有窮性,確定性 不會有二意 可行性 演算法要求 正確性 1.無語法錯誤 2....
資料結構筆記(一)
程式的本質 1 程式是為了實際問題而存在,從本質上而言,程式是解決問題的步驟描述 2 程式鑑評 1 用盡量少的記憶體空間解決問題 2 用盡量少的步驟去解決問題 資料的藝術 1 資料結構的起源 資料結構主要研究非數值計算程式問題中的操作物件以及它們之間的關係 2 資料 程式的操作物件,用於客觀描述事物...