數(shù)據(jù)結(jié)構(gòu)之抽象數(shù)據(jù)類型_跨考網(wǎng)
首先我們回顧一下在程序設(shè)計語言中出現(xiàn)的各種數(shù)據(jù)類型。
數(shù)據(jù)類型
數(shù)據(jù)類型是和數(shù)據(jù)結(jié)構(gòu)密切相關(guān)的一個概念。它最早出現(xiàn)在高級程序設(shè)計語言中,用以刻劃程序中操作對象的特性。在用高級語言編寫的程序中,每個變量、常量或表達式都有一個它所屬的確定的數(shù)據(jù)類型。類型顯式地或隱含地規(guī)定了在程序執(zhí)行期間變量或表達式所有可能的取值范圍,以及在這些值上允許進行的操作。因此,數(shù)據(jù)類型(Data Type)是一個值的集合和定義在這個值集上的一組操作的總稱。
在高級程序設(shè)計語言中,數(shù)據(jù)類型可分為兩類:一類是原子類型,另一類則是結(jié)構(gòu)類型。原子類型的值是不可分解的。如C語言中整型、字符型、浮點型、雙精度型等基本類型,分別用保留字int、char、float、double標識。而結(jié)構(gòu)類型的值是由若干成分按某種結(jié)構(gòu)組成的,因此是可分解的,并且它的成分可以是非結(jié)構(gòu)的,也可以是結(jié)構(gòu)的。例如,數(shù)組的值由若干分量組成,每個分量可以是整數(shù),也可以是數(shù)組等。在某種意義上,數(shù)據(jù)結(jié)構(gòu)可以看成是“一組具有相同結(jié)構(gòu)的值”,而數(shù)據(jù)類型則可被看成是由一種數(shù)據(jù)結(jié)構(gòu)和定義在其上的一組操作所組成的。
抽象數(shù)據(jù)類型
抽象數(shù)據(jù)類型(Abstruct Data Type,簡稱ADT)是指一個數(shù)學模型以及定義在該模型上的一組操作。抽象數(shù)據(jù)類型的定義取決于它的一組邏輯特性,而與其在計算機內(nèi)部如何表示和實現(xiàn)無關(guān)。即不論其內(nèi)部結(jié)構(gòu)如何變化,只要它的數(shù)學特性不變,都不影響其外部的使用。
抽象數(shù)據(jù)類型和數(shù)據(jù)類型實質(zhì)上是一個概念。例如,各種計算機都擁有的整數(shù)類型就是一個抽象數(shù)據(jù)類型,盡管它們在不同處理器上的實現(xiàn)方法可以不同,但由于其定義的數(shù)學特性相同,在用戶看來都是相同的。因此,“抽象”的意義在于數(shù)據(jù)類型的數(shù)學抽象特性。
但在另一方面,抽象數(shù)據(jù)類型的范疇更廣,它不再局限于前述各處理器中已定義并實現(xiàn)的數(shù)據(jù)類型,還包括用戶在設(shè)計軟件系統(tǒng)時自己定義的數(shù)據(jù)類型。為了提高軟件的重用性,在近代程序設(shè)計方法學中,要求在構(gòu)成軟件系統(tǒng)的每個相對獨立的模塊上,定義一組數(shù)據(jù)和施于這些數(shù)據(jù)上的一組操作,并在模塊的內(nèi)部給出這些數(shù)據(jù)的表示及其操作的細節(jié),而在模塊的外部使用的只是抽象的數(shù)據(jù)及抽象的操作。這也就是面向?qū)ο蟮某绦蛟O(shè)計方法。
抽象數(shù)據(jù)類型的定義可以由一種數(shù)據(jù)結(jié)構(gòu)和定義在其上的一組操作組成,而數(shù)據(jù)結(jié)構(gòu)又包括數(shù)據(jù)元素及元素間的關(guān)系,因此抽象數(shù)據(jù)類型一般可以由元素、關(guān)系及操作三種要素來定義。
抽象數(shù)據(jù)類型的特征是使用與實現(xiàn)相分離,實行封裝和信息隱蔽。就是說,在抽象數(shù)據(jù)類型設(shè)計時,把類型的定義與其實現(xiàn)分離開來。
2022考研初復(fù)試已經(jīng)接近尾聲,考研學子全面進入2023屆備考,跨考為23考研的考生準備了10大課包全程準備、全年復(fù)習備考計劃、目標院校專業(yè)輔導(dǎo)、全真復(fù)試模擬練習和全程針對性指導(dǎo);2023考研的小伙伴針也已經(jīng)開始擇校和復(fù)習了,跨考考研暢學5.0版本全新升級,無論你在校在家都可以更自如的完成你的考研復(fù)習,暑假集訓營帶來了院校專業(yè)初步選擇,明確方向;考研備考全年規(guī)劃,核心知識點入門;個性化制定備考方案,助你贏在起跑線,早出發(fā)一點離成功就更近一點!
點擊右側(cè)咨詢或直接前往了解更多
考研院校專業(yè)選擇和考研復(fù)習計劃 | |||
2023備考學習 | 2023線上線下隨時學習 | 34所自劃線院??佳袕?fù)試分數(shù)線匯總 | |
2022考研復(fù)試最全信息整理 | 全國各招生院??佳袕?fù)試分數(shù)線匯總 | ||
2023全日制封閉訓練 | 全國各招生院校考研調(diào)劑信息匯總 | ||
2023考研先知 | 考研考試科目有哪些? | 如何正確看待考研分數(shù)線? | |
不同院校相同專業(yè)如何選擇更適合自己的 | 從就業(yè)說考研如何擇專業(yè)? | ||
手把手教你如何選專業(yè)? | 高校研究生教育各學科門類排行榜 |
相關(guān)推薦
跨考考研課程
班型 | 定向班型 | 開班時間 | 高定班 | 標準班 | 課程介紹 | 咨詢 |
秋季集訓 | 沖刺班 | 9.10-12.20 | 168000 | 24800起 | 小班面授+專業(yè)課1對1+專業(yè)課定向輔導(dǎo)+協(xié)議加強課程(高定班)+專屬規(guī)劃答疑(高定班)+精細化答疑+復(fù)試資源(高定班)+復(fù)試課包(高定班)+復(fù)試指導(dǎo)(高定班)+復(fù)試班主任1v1服務(wù)(高定班)+復(fù)試面授密訓(高定班)+復(fù)試1v1(高定班) | |
2023集訓暢學 | 非定向(政英班/數(shù)政英班) | 每月20日 | 22800起(協(xié)議班) | 13800起 | 先行階在線課程+基礎(chǔ)階在線課程+強化階在線課程+真題階在線課程+沖刺階在線課程+專業(yè)課針對性一對一課程+班主任全程督學服務(wù)+全程規(guī)劃體系+全程測試體系+全程精細化答疑+擇校擇專業(yè)能力定位體系+全年關(guān)鍵環(huán)節(jié)指導(dǎo)體系+初試加強課+初試專屬服務(wù)+復(fù)試全科標準班服務(wù) |