圖graph钓简,G(V,E)=Vertex(頂點(diǎn)集合)+Edge(邊集合)

  • 線性表是一對(duì)一,樹是一對(duì)多汹想,圖是多對(duì)多的關(guān)系外邓。
  • 圖中的數(shù)據(jù)元素我們稱為頂點(diǎn)(相對(duì)于樹中的結(jié)點(diǎn)),頂點(diǎn)集合不能為空古掏,邊集合可以為空损话。
  • 無(wú)向圖——只要圖中有一條邊是無(wú)向邊(A,B)。
  • 有向圖——任意兩頂點(diǎn)之間的邊都是有向邊(徊弁佟)<A,B>丧枪。
  • 無(wú)向完全圖——n個(gè)頂點(diǎn)中任意兩頂點(diǎn)之間都存在邊的無(wú)向圖。邊的總數(shù)是n*(n-1)/2庞萍。
  • 有向完全圖——n個(gè)頂點(diǎn)中任意兩頂點(diǎn)之間都存在方向相反的有向邊的有向圖拧烦。邊的總數(shù)是n*(n-1)。
  • 權(quán)——與圖的邊相關(guān)的數(shù)字钝计。這些權(quán)可以表示從一個(gè)頂點(diǎn)到另一個(gè)頂點(diǎn)的距離或耗費(fèi)恋博。
  • 網(wǎng)——帶權(quán)的圖。如網(wǎng)絡(luò)圖中私恬,各條邊就是鏈路债沮,鏈路都是有帶權(quán)(距離或帶寬)的。
  • 子圖——G=(V,{E})本鸣,G'=(V',{E'})疫衩,其中V'是V的子集,E'是E的子集荣德,則稱G'是G的子圖(subgraph)闷煤。
  • 頂點(diǎn)v的度degree——是和頂點(diǎn)v相連接的邊的數(shù)目。對(duì)于有向圖的頂點(diǎn)的度還分為出度和入度命爬。
  • 鄰接點(diǎn)——同一條邊的兩個(gè)點(diǎn)互為鄰接點(diǎn)曹傀。
  • 路徑——指從一個(gè)頂點(diǎn)到另一個(gè)頂點(diǎn)所經(jīng)過(guò)的頂點(diǎn)的序列。樹的路徑唯一饲宛,但圖的路徑不唯一皆愉,所以有很多求最短路徑的算法。在網(wǎng)絡(luò)圖中艇抠,路徑又叫路由幕庐。
  • 路徑的長(zhǎng)度——路徑上的邊或弧的數(shù)目。
  • 回路或環(huán)——第一個(gè)頂點(diǎn)和最后一個(gè)頂點(diǎn)相同的路徑家淤。
  • 簡(jiǎn)單路徑——路徑序列中沒(méi)有重復(fù)出現(xiàn)的頂點(diǎn)异剥。
  • 簡(jiǎn)單回路——除了第一個(gè)和最后一個(gè)頂點(diǎn)相同外,其余的頂點(diǎn)都不相同絮重。
  • 連通圖(connected graph)——無(wú)向圖中任意兩個(gè)頂點(diǎn)都有路徑(即都是連通的)冤寿。
  • 非連通圖——存在兩個(gè)頂點(diǎn)之間沒(méi)有路徑歹苦,即不連通。有n個(gè)頂點(diǎn)督怜,但只有小于n-1條邊殴瘦,一定是非連通圖。
  • 連通分量——無(wú)向圖中的極大連通子圖号杠。連通圖本身即是蚪腋,而非連通圖中最大的連通子圖即是。
  • 強(qiáng)連通圖——有向圖中姨蟋,任意兩個(gè)頂點(diǎn)都存在雙向連通的路徑屉凯。有向圖的非強(qiáng)連通圖,對(duì)應(yīng)有強(qiáng)連通分量眼溶。
  • 生成樹——一個(gè)連通圖的極小連通子圖悠砚,它含有圖中全部的n個(gè)頂點(diǎn),但只有足以構(gòu)成一棵樹的n-1條邊(即去掉了環(huán)路)偷仿。不過(guò)n個(gè)頂點(diǎn)有n-1條邊并不一定是生成樹哩簿,比如一個(gè)非連通圖中有一部分是個(gè)環(huán)路。因此生成樹的前提一定是連通圖酝静。
  • 有向樹——一個(gè)有向圖恰有一個(gè)頂點(diǎn)的入度為0(根結(jié)點(diǎn)),其余頂點(diǎn)的入度均為1羡玛。
  • 生成森林——一個(gè)有向圖的所有頂點(diǎn)别智,被分成若干顆不相交的有向樹,這些有向樹就組成了有向森林稼稿。

圖的存儲(chǔ)結(jié)構(gòu)

  • 因?yàn)轫旤c(diǎn)間多對(duì)多的關(guān)系薄榛,所以不能用簡(jiǎn)單的順序結(jié)構(gòu)數(shù)組來(lái)表示。
  • 因?yàn)楦鱾€(gè)頂點(diǎn)的度不一致让歼,所以不能用數(shù)據(jù)域+若干指針域的多重鏈表形式來(lái)表示敞恋,否則將造成很大的浪費(fèi)。
  • 圖的存儲(chǔ)結(jié)構(gòu)有5種特別的谋右。

1硬猫、鄰接矩陣——重點(diǎn)關(guān)注頂點(diǎn)

2、鄰接表——對(duì)鄰接矩陣空間浪費(fèi)的改進(jìn)改执,重點(diǎn)關(guān)注頂點(diǎn)

3啸蜜、十字鏈表——對(duì)有向圖的鄰接表進(jìn)行改進(jìn),重點(diǎn)關(guān)注頂點(diǎn)

  • 將展示出度的鄰接表和展示入度的逆鄰接表整合在一起辈挂。

4衬横、鄰接多重表——對(duì)無(wú)向圖的鄰接表進(jìn)行改進(jìn),重點(diǎn)關(guān)注邊

  • 更關(guān)注邊的操作终蒂,仿照十字鏈表蜂林。
  • 鄰接多重表與鄰接表的差別:同一條邊遥诉,在鄰接表中要用兩個(gè)結(jié)點(diǎn)表示,因此不便于刪除一條邊噪叙。然而在鄰接多重表中矮锈,每個(gè)節(jié)點(diǎn)表示一條邊,要?jiǎng)h除邊很簡(jiǎn)單构眯。

5愕难、邊集數(shù)組——重點(diǎn)關(guān)注邊,特別是與邊的權(quán)值有關(guān)的最小生成樹問(wèn)題

圖的遍歷方式

1惫霸、深度優(yōu)先搜索遍歷DFS——類似于樹的先序遍歷猫缭,使用遞歸

2、廣度優(yōu)先搜索遍歷BFS——類似于樹的層序遍歷壹店,使用隊(duì)列


總結(jié)分析兩種遍歷方式

尋找最小生成樹——最小代價(jià)生成樹

以最小的成本完成任務(wù)猜丹?
在一個(gè)帶權(quán)值的圖中,即網(wǎng)中硅卢,n個(gè)頂點(diǎn)找到n-1條邊將他們連起來(lái)成為連通圖射窒,并且各邊的權(quán)值總和最小,即為成本(代價(jià))最小将塑。類似的問(wèn)題就是最小生成樹問(wèn)題脉顿。

1、普里姆(Prim)算法——鄰接矩陣点寥,以某頂點(diǎn)為起點(diǎn)艾疟,逐步找各頂點(diǎn)上最小權(quán)值的邊來(lái)擴(kuò)展生成樹,然后將新的生成樹的各個(gè)頂點(diǎn)往外擴(kuò)展又加入一條最小權(quán)值的邊敢辩,以此類推蔽莱,直到所有頂點(diǎn)都加入得到最小生成樹。算法時(shí)間復(fù)雜度O(n^2)戚长。其中n為頂點(diǎn)個(gè)數(shù)盗冷。

2、克魯斯卡爾(Kruskal)算法——邊集數(shù)組同廉,先將各條邊按照權(quán)值排序仪糖,然后再依次將各邊加入到最小生成樹,遇到形成回路的邊就舍棄恤溶,直到所有頂點(diǎn)都加入了乓诽。算法時(shí)間復(fù)雜度O(n*logn),其中n為邊數(shù)咒程○欤可見邊數(shù)較少的稀疏圖時(shí),用該算法更優(yōu)帐姻,但是邊數(shù)很多的稠密圖用普里姆算法效果更好稠集。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末奶段,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子剥纷,更是在濱河造成了極大的恐慌痹籍,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,273評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件晦鞋,死亡現(xiàn)場(chǎng)離奇詭異蹲缠,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)悠垛,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,349評(píng)論 3 398
  • 文/潘曉璐 我一進(jìn)店門线定,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)攻谁,“玉大人贫导,你說(shuō)我怎么就攤上這事亚隙〈垡螅” “怎么了?”我有些...
    開封第一講書人閱讀 167,709評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵侮邀,是天一觀的道長(zhǎng)语盈。 經(jīng)常有香客問(wèn)我须蜗,道長(zhǎng)搀缠,這世上最難降的妖魔是什么铛楣? 我笑而不...
    開封第一講書人閱讀 59,520評(píng)論 1 296
  • 正文 為了忘掉前任,我火速辦了婚禮艺普,結(jié)果婚禮上蛉艾,老公的妹妹穿的比我還像新娘。我一直安慰自己衷敌,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,515評(píng)論 6 397
  • 文/花漫 我一把揭開白布拓瞪。 她就那樣靜靜地躺著缴罗,像睡著了一般。 火紅的嫁衣襯著肌膚如雪祭埂。 梳的紋絲不亂的頭發(fā)上面氓,一...
    開封第一講書人閱讀 52,158評(píng)論 1 308
  • 那天,我揣著相機(jī)與錄音蛆橡,去河邊找鬼舌界。 笑死,一個(gè)胖子當(dāng)著我的面吹牛泰演,可吹牛的內(nèi)容都是我干的呻拌。 我是一名探鬼主播,決...
    沈念sama閱讀 40,755評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼睦焕,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼藐握!你這毒婦竟也來(lái)了靴拱?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,660評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤猾普,失蹤者是張志新(化名)和其女友劉穎袜炕,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體初家,經(jīng)...
    沈念sama閱讀 46,203評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡偎窘,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,287評(píng)論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了溜在。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片陌知。...
    茶點(diǎn)故事閱讀 40,427評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖炕泳,靈堂內(nèi)的尸體忽然破棺而出纵诞,到底是詐尸還是另有隱情,我是刑警寧澤培遵,帶...
    沈念sama閱讀 36,122評(píng)論 5 349
  • 正文 年R本政府宣布浙芙,位于F島的核電站,受9級(jí)特大地震影響籽腕,放射性物質(zhì)發(fā)生泄漏嗡呼。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,801評(píng)論 3 333
  • 文/蒙蒙 一皇耗、第九天 我趴在偏房一處隱蔽的房頂上張望南窗。 院中可真熱鬧,春花似錦郎楼、人聲如沸万伤。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,272評(píng)論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)敌买。三九已至,卻和暖如春阶界,著一層夾襖步出監(jiān)牢的瞬間虹钮,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,393評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工膘融, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留芙粱,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,808評(píng)論 3 376
  • 正文 我出身青樓氧映,卻偏偏與公主長(zhǎng)得像春畔,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,440評(píng)論 2 359

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

  • 第一章 緒論 什么是數(shù)據(jù)結(jié)構(gòu)拐迁? 數(shù)據(jù)結(jié)構(gòu)的定義:數(shù)據(jù)結(jié)構(gòu)是相互之間存在一種或多種特定關(guān)系的數(shù)據(jù)元素的集合蹭劈。 第二章...
    SeanCheney閱讀 5,781評(píng)論 0 19
  • https://zh.visualgo.net/graphds 淺談圖形結(jié)構(gòu)https://zh.visualgo...
    狼之獨(dú)步閱讀 4,159評(píng)論 0 0
  • 圖的基本概念 圖由結(jié)點(diǎn)的有窮集合V和邊的集合E組成。圖中常常將結(jié)點(diǎn)成為頂點(diǎn)线召,邊是頂點(diǎn)的有序偶對(duì)铺韧。若兩個(gè)頂點(diǎn)之間存在...
    桔子滿地閱讀 1,391評(píng)論 0 0
  • 一些概念 數(shù)據(jù)結(jié)構(gòu)就是研究數(shù)據(jù)的邏輯結(jié)構(gòu)和物理結(jié)構(gòu)以及它們之間相互關(guān)系,并對(duì)這種結(jié)構(gòu)定義相應(yīng)的運(yùn)算缓淹,而且確保經(jīng)過(guò)這...
    Winterfell_Z閱讀 5,850評(píng)論 0 13
  • 圖是一種比線性表和樹更復(fù)雜的數(shù)據(jù)結(jié)構(gòu)讯壶,在圖中料仗,結(jié)點(diǎn)之間的關(guān)系是任意的,任意兩個(gè)數(shù)據(jù)元素之間都可能相關(guān)伏蚊。圖是一種多對(duì)...
    Alent閱讀 2,308評(píng)論 1 22