學習筆記 什麼是資料結構 2019 11 20

2021-09-29 19:09:49 字數 1467 閱讀 7006

 「資料結構是資料物件,以及存在於該物件的例項和組成例項的資料元素之間的各種聯絡。這些聯絡可以通過定義相關的函式來給出。」

— sartaj sahni,《資料結構、演算法與應用》

 「資料結構是adt(抽象資料型別 abstract data type)的物理實現。」

— clifford a.shaffer,《資料結構與演算法分析》

 「資料結構(data structure)是計算機中儲存、組織資料的方式。通常情況下,精心選擇的資料結構可以帶來最優效率的演算法。」

—中文維基百科

但是資料結構演算法常常是一起出現

①跟資料的組織方式有關

②跟空間的利用效率有關

(盡量避免使用遞迴函式,計算機不喜歡)

例.寫程式實現乙個函式printn,使得傳入乙個正整數為n的引數後,能順序列印從1到n的全部正整數.

//迴圈

void printn (

int n )

return

;}

當n取很大時(比如100000),遞迴法就無法輸出了,只能用迴圈法

//遞迴

void printn (

int n )

return

;}

③跟演算法的巧妙程度有關

資料物件在計算機中的組織方式

 邏輯結構

 物理儲存結構

資料物件必定與一系列加在其上的操作相關聯

 完成這些操作所用的方法就是演算法

①邏輯結構:

資料的邏輯結構,簡單地理解,就是指的資料之間的邏輯關係。

資料之間的邏輯關係可簡單的分為三類:

▲一對一 (線性結構,串)

▲一對多 (層次結構 樹)

▲多對多 (圖)

②物理結構

指的是資料在計算機儲存器中的存放方式(例如:記憶體中),可以選擇集中存放,還是分散存放。

具體表現:順序儲存(位址連續)和鏈式儲存(指標表示邏輯關係)。

資料型別

 資料物件集

 資料集合相關聯的操作集

抽象:描述資料型別的方法不依賴於具體實現

 與存放資料的機器無關

 與資料儲存的物理結構無關

 與實現操作的演算法和程式語言均無關

只描述資料物件集和相關操作集「是什麼」,並不涉及 「如何做到」的問題

筆記 資料結構 什麼是資料結構

解決問題的方法的效率與 資料的組織方式 空間利用效率 演算法的巧妙程度 有關 include include includeclock t start,stop double duration define maxn 10 define maxk 1e7 double f1 int n,double...

(一)資料結構學習筆記《什麼是資料結構》

以下是資料結構基礎理論的小總結 什麼是資料結構 資料結構是在整個電腦科學與技術領域上廣泛被使用的術語。它用來反映乙個資料的內部構成,即乙個資料由那些成分資料構成,以什麼方式構成,呈什麼結構。資料結構有邏輯上的資料結構和物理上的資料結構之分。邏輯上的資料結構反映成分資料之間的邏輯關係,而物理上的資料結...

資料結構 什麼是資料結構?

緒論 其實,資料結構在計算機科學界至今沒有標準的定義。個人根據各自的理解的不同而有不同的表述方法 資料結構是資料物件,以及存在於該物件的例項合組成例項的資料元素之間的各種聯絡。這些聯絡可以通過定義相關的函式來給出。他將資料物件 data object 定義為 乙個資料物件是例項或值的集合 其實,究竟...