數(shù)據(jù)結(jié)構(gòu)和算法的基本概念

數(shù)據(jù)結(jié)構(gòu):指相互之間存在一種或多種特定關(guān)系的數(shù)據(jù)元素的集合弄喘,是計(jì)算機(jī)存儲(chǔ)荠瘪、組織數(shù)據(jù)的方式茵休。數(shù)據(jù)機(jī)構(gòu)被形式的定義為(D,R)造成,其中D是指數(shù)據(jù)元素的有限集合显熏,R是D上所有元素關(guān)系的有限集合。

解釋:“數(shù)據(jù)結(jié)構(gòu)”的定義晒屎,首先應(yīng)該包含數(shù)據(jù)對(duì)象在計(jì)算機(jī)中的組織方式——類似于圖書館中書架上擺書的方法喘蟆。另一方面,數(shù)據(jù)對(duì)象必定與一系列施加于數(shù)據(jù)對(duì)象上的造作相關(guān)聯(lián)鼓鲁,就如書架上擺書是為了能找到想要的書或者可以插入一本新買的書蕴轨。關(guān)于數(shù)據(jù)對(duì)象在計(jì)算機(jī)中的組織方式,還包含2個(gè)概念:一是數(shù)據(jù)對(duì)象集的邏輯結(jié)構(gòu)骇吭,二是數(shù)據(jù)對(duì)象集在計(jì)算機(jī)中的物理存儲(chǔ)結(jié)構(gòu)橙弱。

舉例,學(xué)籍管理系統(tǒng)中學(xué)生信息表的每一個(gè)數(shù)據(jù)元素就是一個(gè)學(xué)生記錄。它包括學(xué)生的學(xué)號(hào)棘脐、姓名斜筐、性別、籍貫蛀缝、出生年月顷链、成績(jī)等數(shù)據(jù)項(xiàng)。這些數(shù)據(jù)項(xiàng)可以分為兩種:一種叫做初等項(xiàng)屈梁,如學(xué)生的性別嗤练、籍貫等,這些數(shù)據(jù)項(xiàng)是在數(shù)據(jù)處理時(shí)不能再分割的最小單位在讶;另一種叫做組合項(xiàng)潭苞,如學(xué)生的成績(jī),它可以再劃分為數(shù)學(xué)真朗、物理此疹、化學(xué)等更小的項(xiàng)。通常遮婶,在解決實(shí)際應(yīng)用問(wèn)題時(shí)是把每個(gè)學(xué)生記錄當(dāng)作一個(gè)基本單位進(jìn)行訪問(wèn)和處理的蝗碎。

常用的結(jié)構(gòu)有數(shù)組、棧旗扑、隊(duì)列蹦骑、鏈表、樹(shù)臀防、堆眠菇、圖、散列表等袱衷。

延伸:抽象數(shù)據(jù)類型:只描述數(shù)據(jù)對(duì)象集和相關(guān)操作集“是什么”捎废,并不涉及“如何做”的問(wèn)題。通過(guò)抽象可以屏蔽底層細(xì)節(jié)致燥,使設(shè)計(jì)更加簡(jiǎn)單登疗、理解更加方便,即它把數(shù)據(jù)對(duì)象和相關(guān)操封裝在一起嫌蚤,對(duì)于需要調(diào)用這個(gè)數(shù)據(jù)類型的用戶而言辐益,無(wú)論內(nèi)部的具體實(shí)現(xiàn)如何改變,只要對(duì)外描述的接口不變脱吱,就不影響使用智政。

算法:算法的設(shè)計(jì)取決于數(shù)據(jù)(邏輯)結(jié)構(gòu),而算法的實(shí)現(xiàn)依賴于采用的存儲(chǔ)結(jié)構(gòu)箱蝠。數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)實(shí)質(zhì)上是它的邏輯結(jié)構(gòu)在計(jì)算機(jī)存儲(chǔ)器中的實(shí)現(xiàn)续捂,為了全面的反映一個(gè)數(shù)據(jù)的邏輯結(jié)構(gòu)垦垂,它在存儲(chǔ)器中的映象包括兩方面內(nèi)容,即數(shù)據(jù)元素之間的信息和數(shù)據(jù)元素之間的關(guān)系疾忍。數(shù)據(jù)的運(yùn)算是在數(shù)據(jù)的邏輯結(jié)構(gòu)上定義的操作算法乔外,如檢索、插入一罩、刪除杨幼、更新和排序等。

算法是一個(gè)有限指令集聂渊,它接受一些輸入差购,產(chǎn)生輸出,并在有限步驟后終止汉嗽。算法不是程序欲逃,程序可以無(wú)限運(yùn)行,算法必須在有限步后終止饼暑。算法稳析,強(qiáng)調(diào)表現(xiàn)“做什么”,而忽略細(xì)節(jié)性的“怎么做”弓叛。

衡量算法優(yōu)劣的指標(biāo)主要有兩個(gè):空間復(fù)雜度S(n)——根據(jù)算法寫成的程序在執(zhí)行時(shí)占用存儲(chǔ)單元的長(zhǎng)度(這個(gè)長(zhǎng)度往往與輸入數(shù)據(jù)的規(guī)模n有關(guān))和時(shí)間復(fù)雜度T(n)——根據(jù)算法寫成的程序在執(zhí)行時(shí)耗費(fèi)時(shí)間的長(zhǎng)度(這個(gè)長(zhǎng)度往往也與輸入數(shù)據(jù)的規(guī)模n有關(guān))彰居。

用漸近表示法分析算法復(fù)雜度的增長(zhǎng)趨勢(shì)。

遞歸是數(shù)據(jù)結(jié)構(gòu)算法設(shè)計(jì)中很重要的手段

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末撰筷,一起剝皮案震驚了整個(gè)濱河市陈惰,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌毕籽,老刑警劉巖抬闯,帶你破解...
    沈念sama閱讀 212,542評(píng)論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異关筒,居然都是意外死亡溶握,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,596評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門平委,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)奈虾,“玉大人,你說(shuō)我怎么就攤上這事廉赔。” “怎么了匾鸥?”我有些...
    開(kāi)封第一講書人閱讀 158,021評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵蜡塌,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我勿负,道長(zhǎng)馏艾,這世上最難降的妖魔是什么劳曹? 我笑而不...
    開(kāi)封第一講書人閱讀 56,682評(píng)論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮琅摩,結(jié)果婚禮上铁孵,老公的妹妹穿的比我還像新娘。我一直安慰自己房资,他們只是感情好蜕劝,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,792評(píng)論 6 386
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著轰异,像睡著了一般岖沛。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上搭独,一...
    開(kāi)封第一講書人閱讀 49,985評(píng)論 1 291
  • 那天婴削,我揣著相機(jī)與錄音,去河邊找鬼牙肝。 笑死唉俗,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的配椭。 我是一名探鬼主播虫溜,決...
    沈念sama閱讀 39,107評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼颂郎!你這毒婦竟也來(lái)了吼渡?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書人閱讀 37,845評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤乓序,失蹤者是張志新(化名)和其女友劉穎寺酪,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體替劈,經(jīng)...
    沈念sama閱讀 44,299評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡寄雀,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,612評(píng)論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了陨献。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片盒犹。...
    茶點(diǎn)故事閱讀 38,747評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖眨业,靈堂內(nèi)的尸體忽然破棺而出急膀,到底是詐尸還是另有隱情,我是刑警寧澤龄捡,帶...
    沈念sama閱讀 34,441評(píng)論 4 333
  • 正文 年R本政府宣布卓嫂,位于F島的核電站,受9級(jí)特大地震影響聘殖,放射性物質(zhì)發(fā)生泄漏晨雳。R本人自食惡果不足惜行瑞,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,072評(píng)論 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望餐禁。 院中可真熱鬧血久,春花似錦、人聲如沸帮非。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 30,828評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)喜鼓。三九已至副砍,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間庄岖,已是汗流浹背豁翎。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 32,069評(píng)論 1 267
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留隅忿,地道東北人心剥。 一個(gè)月前我還...
    沈念sama閱讀 46,545評(píng)論 2 362
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像背桐,于是被迫代替她去往敵國(guó)和親优烧。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,658評(píng)論 2 350

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