Java 數(shù)據(jù)結(jié)構(gòu)及算法系列 1 - 數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)類型

一開始的堅持總是容易的驹溃,因為熱血還未退卻,激情仍在燃燒延曙,所以趁著這股勁豌鹤,本系列的第一篇開始了!

開始后續(xù)真正數(shù)據(jù)結(jié)構(gòu)和算法的學(xué)習(xí)之前枝缔,需要先弄清楚一些簡單的概念布疙,比如數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)類型及抽象數(shù)據(jù)類型愿卸。

數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)類型

計算機是處理數(shù)據(jù)的機器灵临,而數(shù)據(jù)是信息的載體,是描述客觀事物的數(shù)趴荸、字符儒溉、以及所有能輸入到計算機中,被計算機程序識別和處理的符號的集合发钝。
在第 0 篇中提到顿涣,根據(jù)維基百科:數(shù)據(jù)結(jié)構(gòu) (data structure) 是計算機中存儲波闹、組織數(shù)據(jù)的方式。嚴(yán)老師在《數(shù)據(jù)結(jié)構(gòu)》中闡述的:

  1. 數(shù)據(jù)結(jié)構(gòu):是相互直接存在一種或多種特定關(guān)系的數(shù)據(jù)元素的集合涛碑,包括邏輯結(jié)構(gòu)和物理結(jié)構(gòu)精堕;
  2. 數(shù)據(jù)類型:是一個值的集合和定義在這個值集上的一組操作的總稱;
  3. 抽象數(shù)據(jù)類型:是指一個數(shù)學(xué)模型以及定義在該模型上的一組操作蒲障;

再擴展一下歹篓,參照這篇 博文
數(shù)據(jù)結(jié)構(gòu):

是用來反映一個數(shù)據(jù)的內(nèi)部構(gòu)成,即一個數(shù)據(jù)由哪些成分?jǐn)?shù)據(jù)構(gòu)成晌涕,以什么方式構(gòu)成滋捶,呈什么結(jié)構(gòu)痛悯。邏輯上的數(shù)據(jù)結(jié)構(gòu)反映成分?jǐn)?shù)據(jù)之間的邏輯關(guān)系余黎,物理上的數(shù)據(jù)結(jié)構(gòu)反映成分?jǐn)?shù)據(jù)在計算機內(nèi)的存儲安排。數(shù)據(jù)結(jié)構(gòu)是數(shù)據(jù)存在的形式载萌。
數(shù)據(jù)結(jié)構(gòu)惧财,分為數(shù)據(jù)的邏輯結(jié)構(gòu)和物理結(jié)構(gòu)
數(shù)據(jù)的邏輯結(jié)構(gòu):數(shù)據(jù)元素之間的邏輯關(guān)系 => 集合結(jié)構(gòu);線性結(jié)構(gòu)扭仁;樹形結(jié)構(gòu)垮衷;圖形結(jié)構(gòu)
數(shù)據(jù)的物理結(jié)構(gòu):數(shù)據(jù)元素在計算機存儲器中是如何存儲的 => 順序存儲(存放在連續(xù)的內(nèi)存地址中);鏈?zhǔn)酱鎯Γ〝?shù)據(jù)通過指針指向下一個存儲地址乖坠,不一定存儲在連續(xù)的地址空間)

數(shù)據(jù)類型:

數(shù)據(jù)是按照數(shù)據(jù)結(jié)構(gòu)分類的搀突,具有相同數(shù)據(jù)結(jié)構(gòu)的數(shù)據(jù)屬同一類。同一類數(shù)據(jù)的全體稱為數(shù)據(jù)類型熊泵。在程序設(shè)計高級語言中仰迁,數(shù)據(jù)類型用來說明一個數(shù)據(jù)在數(shù)據(jù)分類中的歸屬。它是數(shù)據(jù)的一種屬性顽分。這個屬性限定了該數(shù)據(jù)的變化范圍徐许。為了解題的需要,根據(jù)數(shù)據(jù)結(jié)構(gòu)的種類卒蘸,高級語言定義了一系列的數(shù)據(jù)類型雌隅。不同的高級語言所定義的數(shù)據(jù)類型不盡相同。
數(shù)據(jù)類型是一個值的集合和定義在這個值上的一組操作的總稱缸沃。
按照值的不同恰起,高級程序設(shè)計語言中數(shù)據(jù)類型可分為兩類:一類是非結(jié)構(gòu)的原子類型,另一類是結(jié)構(gòu)類型趾牧。

抽象數(shù)據(jù)類型

抽象數(shù)據(jù)類型的含義可理解為數(shù)據(jù)類型的進一步抽象检盼。即把數(shù)據(jù)類型和數(shù)據(jù)類型上的運算捆在一起,進行封裝武氓。引入抽象數(shù)據(jù)類型的目的是把數(shù)據(jù)類型的表示和數(shù)據(jù)類型上運算的實現(xiàn)與這些數(shù)據(jù)類型和運算在程序中的引用隔開梯皿,使它們相互獨立仇箱。對于抽象數(shù)據(jù)類型的描述,除了必須描述它的數(shù)據(jù)結(jié)構(gòu)外东羹,還必須描述定義在它上面的運算(過程或函數(shù))剂桥。抽象數(shù)據(jù)類型上定義的過程和函數(shù)以該抽象數(shù)據(jù)類型的數(shù)據(jù)所應(yīng)具有的數(shù)據(jù)結(jié)構(gòu)為基礎(chǔ)。
抽象數(shù)據(jù)類型實際上就是對該數(shù)據(jù)結(jié)構(gòu)的定義属提。因為它定義了一個數(shù)據(jù)的邏輯結(jié)構(gòu)以及在此結(jié)構(gòu)上的一組算法权逗。
抽象數(shù)據(jù)類型只是在數(shù)據(jù)的邏輯結(jié)構(gòu)上討論問題,與數(shù)據(jù)的存儲結(jié)構(gòu)無關(guān)冤议。

計算機科學(xué)中有兩種常見的抽象:
procedural(functiona) abstraction: 過程抽象斟薇,指使用一個函數(shù)或方法而忽略它的具體實現(xiàn)。
data abstraction: 數(shù)據(jù)抽象恕酸,指數(shù)據(jù)類型的屬性(值和操作方法)與數(shù)據(jù)類型的具體實現(xiàn)分離堪滨。

簡言之,數(shù)據(jù)結(jié)構(gòu)是數(shù)據(jù)儲存及邏輯的具體表現(xiàn)和實現(xiàn)方式蕊温,它的目標(biāo)是為了高效地儲存和檢索數(shù)據(jù)袱箱;而抽象數(shù)據(jù)類型是數(shù)據(jù)類型的抽象,它是通過其上的可執(zhí)行的操作以及這些操作的效果的數(shù)學(xué)約束的間接定義义矛。

數(shù)據(jù)結(jié)構(gòu)和抽象數(shù)據(jù)類型的一些典型例子:


數(shù)據(jù)結(jié)構(gòu)和抽象數(shù)據(jù)類型

Voilà发笔,這就是本篇的全部內(nèi)容了,歡迎各位留言斧正凉翻!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末了讨,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子制轰,更是在濱河造成了極大的恐慌前计,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,591評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件艇挨,死亡現(xiàn)場離奇詭異残炮,居然都是意外死亡,警方通過查閱死者的電腦和手機缩滨,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,448評論 3 392
  • 文/潘曉璐 我一進店門势就,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人脉漏,你說我怎么就攤上這事苞冯。” “怎么了侧巨?”我有些...
    開封第一講書人閱讀 162,823評論 0 353
  • 文/不壞的土叔 我叫張陵舅锄,是天一觀的道長。 經(jīng)常有香客問我司忱,道長皇忿,這世上最難降的妖魔是什么畴蹭? 我笑而不...
    開封第一講書人閱讀 58,204評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮鳍烁,結(jié)果婚禮上叨襟,老公的妹妹穿的比我還像新娘。我一直安慰自己幔荒,他們只是感情好糊闽,可當(dāng)我...
    茶點故事閱讀 67,228評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著爹梁,像睡著了一般右犹。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上姚垃,一...
    開封第一講書人閱讀 51,190評論 1 299
  • 那天念链,我揣著相機與錄音,去河邊找鬼莉炉。 笑死钓账,一個胖子當(dāng)著我的面吹牛碴犬,可吹牛的內(nèi)容都是我干的絮宁。 我是一名探鬼主播,決...
    沈念sama閱讀 40,078評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼服协,長吁一口氣:“原來是場噩夢啊……” “哼绍昂!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起偿荷,我...
    開封第一講書人閱讀 38,923評論 0 274
  • 序言:老撾萬榮一對情侶失蹤窘游,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后跳纳,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體忍饰,經(jīng)...
    沈念sama閱讀 45,334評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,550評論 2 333
  • 正文 我和宋清朗相戀三年寺庄,在試婚紗的時候發(fā)現(xiàn)自己被綠了艾蓝。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,727評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡斗塘,死狀恐怖赢织,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情馍盟,我是刑警寧澤于置,帶...
    沈念sama閱讀 35,428評論 5 343
  • 正文 年R本政府宣布,位于F島的核電站贞岭,受9級特大地震影響八毯,放射性物質(zhì)發(fā)生泄漏搓侄。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,022評論 3 326
  • 文/蒙蒙 一话速、第九天 我趴在偏房一處隱蔽的房頂上張望休讳。 院中可真熱鬧,春花似錦尿孔、人聲如沸俊柔。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,672評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽雏婶。三九已至,卻和暖如春白指,著一層夾襖步出監(jiān)牢的瞬間留晚,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,826評論 1 269
  • 我被黑心中介騙來泰國打工告嘲, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留错维,地道東北人。 一個月前我還...
    沈念sama閱讀 47,734評論 2 368
  • 正文 我出身青樓橄唬,卻偏偏與公主長得像赋焕,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子仰楚,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,619評論 2 354

推薦閱讀更多精彩內(nèi)容

  • 國家電網(wǎng)公司企業(yè)標(biāo)準(zhǔn)(Q/GDW)- 面向?qū)ο蟮挠秒娦畔?shù)據(jù)交換協(xié)議 - 報批稿:20170802 前言: 排版 ...
    庭說閱讀 10,960評論 6 13
  • 都說長的好看的人才有青春隆判,平凡的人只有大學(xué)。對于徘徊在青春尾巴的我僧界,應(yīng)該只有繁雜枯燥的工作吧侨嘀。默默蜷縮在一個角落獨...
    七一sevenone閱讀 789評論 3 2
  • 我發(fā)現(xiàn)藝術(shù)有一種魔力咬腕,它利用文字、圖像葬荷、音樂來刺激我的感官涨共,讀著"生如夏花,死如秋葉"很爽闯狱,但它沒有持續(xù)地影...
    叼奶嘴的鍋包肉閱讀 422評論 0 0
  • 歸煞赢,難 桃花,人面 經(jīng)世年哄孤,滄桑變 幼及肩頭照筑,鬢染花斑 早雞鳴犬吠,暮日缺星繁 百木稀弱壯碩,阡陌細短縱連 回眸望...
    碧霄靜思閱讀 221評論 1 1