你知道資料結構是什麼嘛?

2021-10-09 06:44:44 字數 2212 閱讀 9983

什麼是結構?

看到這個估計你要想了,這不是忽悠人嘛?先別急,讓我們看看維基百科對於資料結構的解釋怎麼解釋的。

先來看看這句話是怎麼理解的?

問:什麼是資料結構?

答:資料結構是乙個集合。

問:它是乙個什麼樣的集合?

答:它是乙個帶有結構特徵的資料元素的集合。

問:那它研究的是什麼呢?

答:它研究的是兩個結構間的相互關係。

問:那兩個結構?

答:邏輯結構和物理結構(也就是儲存結構)。

問:那它有什麼要求呢?

答:需要對這種結構定義相適應的演算法,並且要確保這種演算法執行後所得到的新的結構仍然保持原來的結構型別。

但這裡有幾個問題?

資料(data)是事實或觀察的結果,是對客觀事物的邏輯歸納,是用於表示客觀事物的未經加工的原始素材。資料可以是連續的值,比如聲音、影象,稱為模擬資料。也可以是離散的,如符號、文字,稱為數字資料。在計算機系統中,資料以二進位制資訊單元0,1的形式表示。、

簡單來說,資料是對客觀事物的符號表示,在電腦科學中指的是所有能夠輸入到計算機中並被電腦程式處理的符號的總稱。

資料元素(data element)是電腦科學術語。它是資料的基本單位,資料元素也叫做結點或記錄。在電腦程式中通常作為乙個整體進行考慮和處理。有時,乙個資料元素可由若干個資料項組成,例如,一本書的書目資訊為乙個資料元素,而書目資訊的每一項(如書名、作者名等)為乙個資料項。資料項是資料的不可分割的最小單位。

資料物件(data object)是性質相同的資料元素的集合,是資料的乙個子集。

結構就是資料元素之間的關係,分為邏輯結構和儲存結構。

系統的邏輯結構是對整個系統從思想的分類,把系統分成若干個邏輯單元,分別實現自己的功能。一般在系統開發時,邏輯結構往往都由架構師完成。系統的邏輯結構對系統的開發起到重要性的決定。

資料的邏輯結構是對資料之間關係的描述,有時就把邏輯結構簡稱為資料結構。邏輯結構形式地定義為(k,r)(或(d,s)),其中,k是資料元素的有限集,r是k上的關係的有限集。

邏輯結構有四種基本型別:集合結構、線性結構、樹狀結構和網路結構。表和樹是最常用的兩種高效資料結構,許多高效的演算法能夠用這兩種資料結構來設計實現。表是線性結構的(全序關係),樹(偏序或層次關係)和圖(區域性有序(weak/local order))是非線性結構。

資料結構的物理結構是指邏輯結構的儲存映像(image)。資料結構ds的物理結構p對應於從ds的資料元素到儲存區m(維護著邏輯結構s)的乙個對映:p:(d,s)m

四種基本型別:

(1)集合:也就是資料元素之間除了同屬於乙個集合的關係外,別無其他關係。

(2)線性結構:結構中的元素之間存在乙個對著乙個的關係。

(3)樹形結構:結構中的資料元素之間存在乙個對乙個的關係。

(4)圖狀結構或者網狀結構:結構中的資料元素之間存在多個對多個。

資料結構在計算機中的表示(又稱為映像)稱為資料的物理結構,又稱為儲存結構。簡單來說,就是資料元素及其關係在計算機儲存器中的儲存方式。資料的儲存結構是指資料的邏輯結構在計算機中的表示。

資料元素之間的關係有兩種不同的表示方法:順序映象和非順序映象,並由此得到兩種不同的儲存結構:順序儲存結構和鏈式儲存結構。

順序儲存方法它是把邏輯上相鄰的結點儲存在物理位置相鄰的儲存單元裡,結點間的邏輯關係由儲存單元的鄰接關係來體現,由此得到的儲存表示稱為順序儲存結構。順序儲存結構是一種最基本的儲存表示方法,通常借助於程式語言中的陣列來實現。

鏈結儲存方法它不要求邏輯上相鄰的結點在物理位置上亦相鄰,結點間的邏輯關係是由附加的指標字段表示的。由此得到的儲存表示稱為鏈式儲存結構,鏈式儲存結構通常借助於程式語言中的指標型別來實現。

yaf mysql 你了解Yaf 是什麼嘛

yaf 是什麼 yaf,全稱 yet another framework,是乙個c語言編寫的 基於php擴充套件開發的php框架。相比於一般的php框架,它更快,快到被譽為最快的php開發框架。它提供了bootstrap 路由 分發 檢視 外掛程式功能。yaf 的優點用c語言開發的php框架,相比原...

資料結構與演算法是什麼

前言 資料結構一般和演算法說在一起,稱為資料結構與演算法。這個知識非常好理解,但是一些老師每天 的簡直不知所云。所以我就想寫這篇簡單的教程,知識淺薄,請包涵。什麼是資料結構?資料結構就是一些有關係的資料的集合,有順序表,鍊錶,棧,佇列,樹,圖。等這幾種結構。什麼是演算法?演算法就是解決問題的一種方法...

知道你在領導眼裡是什麼嗎

盡職的牧羊犬 新新人類最為人詬病的就是缺乏責任感,作為乙個新人,學習建立負責任的觀念,會讓主管 同事覺得孺子可教。抱著多做一點多學一點的心態,你很快就會進入狀態。團結合作的蜜蜂 新人進到公司,往往不知如何利用團隊的力量完成工作。現在的企業很講究teamwork,這不但包括藉由團隊 尋求資源,也包含主...