Lobert L.Kruse 在《數(shù)據(jù)結構與程序設計》一書中,將一個數(shù)據(jù)結構的設計過程分成抽象層、數(shù)據(jù)結構層和實現(xiàn)層。其中,抽象層是指抽象數(shù)據(jù)類型層,它討論數(shù)據(jù)的邏輯結構及其運算,數(shù)據(jù)結構層和實現(xiàn)層討論一個數(shù)據(jù)結構的表示和在計算機內(nèi)的存儲細節(jié)以及運算的實現(xiàn)。
       數(shù)據(jù)結構是計算機存儲、組織數(shù)據(jù)的方式。數(shù)據(jù)結構是指相互之間存在一種或多種特定關系的數(shù)據(jù)元素的集合。通常情況下,精心選擇的數(shù)據(jù)結構可以帶來更高的運行或者存儲效率。數(shù)據(jù)結構往往同高效的檢索算法和索引技術有關。
數(shù)據(jù)結構在計算機科學界至今沒有標準的定義。個人根據(jù)各自的理解的不同而有不同的表述方法:
Sartaj Sahni 在他的《數(shù)據(jù)結構、算法與應用》一書中稱:“數(shù)據(jù)結構是數(shù)據(jù)對象,以及存在于該對象的實例和組成實例的數(shù)據(jù)元素之間的各種聯(lián)系。這些聯(lián)系可以通過定義相關的函數(shù)來給出。”他將數(shù)據(jù)對象(data object)定義為“一個數(shù)據(jù)對象是實例或值的集合”。
Clifford A.Shaffer 在《數(shù)據(jù)結構與算法分析》一書中的定義是:“數(shù)據(jù)結構是 ADT(抽象數(shù)據(jù)類型 Abstract Data Type) 的物理實現(xiàn)。”
在許多類型的程序的設計中,數(shù)據(jù)結構的選擇是一個基本的設計考慮因素。許多大型系統(tǒng)的構造經(jīng)驗表明,系統(tǒng)實現(xiàn)的困難程度和系統(tǒng)構造的質量都嚴重的依賴于是否選擇了最優(yōu)的數(shù)據(jù)結構。許多時候,確定了數(shù)據(jù)結構后,算法就容易得到了。有些時候事情也會反過來,我們根據(jù)特定算法來選擇數(shù)據(jù)結構與之適應。不論哪種情況,選擇合適的數(shù)據(jù)結構都是非常重要的。

郵箱
huangbenjincv@163.com

汉沽区| 南汇区| 阿坝县| 拉孜县| 怀远县| 韶山市| 平邑县| 南木林县| 辉南县| 九龙城区| 都江堰市| 三门县| 错那县| 甘孜县| 冷水江市| 洱源县| 荃湾区| 湟源县| 察隅县| 额济纳旗| 大安市| 嘉义县| 昌图县| 和林格尔县| 得荣县| 瑞昌市| 德惠市| 辽阳县| 万安县| 巴彦淖尔市| 丰顺县| 菏泽市| 晋江市| 赣榆县| 平乡县| 黄陵县| 西昌市| 咸丰县| 盐亭县| 衡山县| 桃园县|