圖論基礎知識總結(一)

本來一開始沒想寫總結的,但是感覺之前寫的邏輯比較混亂,然後重點內容不突出,怕回頭誤導別人,而且自己看着也不方便,所以決定把之前的總結一下(會包括之前的大部分內容),然後把邏輯不清的黑歷史刪了。o(* ̄︶ ̄*)o


§頂點&邊

問題引入

首先,講一個大家都知道的故事。我記得這個故事在小學數學補充讀本里出現過,當時引發了我們全班同學對一筆畫問題的討論(以至於全班同學都學會了一筆畫梅花……)。

七橋問題

問題描述:

18世紀著名古典數學問題之一。在哥尼斯堡的一個公園裏,有七座橋將普雷格爾河中兩個島及島與河岸連接起來(如圖)。問是否可能從這四塊陸地中任一塊出發,恰好通過每座橋一次,再回到起點?歐拉於1736年研究並解決了此問題,他把問題歸結爲如右圖的“一筆畫”問題,證明上述走法是不可能的。
這個問題描述看起來很抽象,我們將問題簡化一下(自從昨天看了一個關於動歸的博客後,突然開始思考博客的語言應該生動形象,然而我似乎不太擅長語文╮(╯▽╰)╭,大家就湊合一下)


故事版:
有一個叫做哥尼斯堡的小鎮,考慮到“哥尼斯堡”這個名字不好記,下文我們就稱之爲G鎮。G鎮的居民很愛鍛鍊身體,過着日出而作日落而息的生活,而他們睡前都喜歡到公園裏遛彎消食。但是,G鎮的居民不是隻會享受生活的一羣人,他們還熱愛思考數學問題。
有一天,一個孩子提出了一個問題:
 "我們的公園裏有一條河,河上有兩個小島,在兩岸小島之間一共建造了7座橋,如果我想走過所有的橋然後回到我出發的地方應該怎麼走呢?”
聽到這個問題,整個G鎮的居民都陷入了沉思,有的還晚上不睡覺,一遍一遍的在橋上走來走去,但是沒有找到答案。
相信有好奇的讀者肯定曾經自己也在紙上畫過很多遍,但是都沒有找到答案。
本來這個問題委實不會影響到G鎮居民的生活,畢竟這並不影響到他們的生活。幸運的是,據說,剛好有一位很厲害的數學家剛好就暫住在G鎮,這個孩子的問題引起了數學家的注意。


正經版:
有一個簡單圖,有4個頂點,7條邊,問:能否遍歷所有的邊最後回到起點且不會重複經過同一條邊。


這個問題背稱爲一筆畫問題:
/*百度百科介紹
有關圖論研究的熱點問題。18世紀初普魯士的哥尼斯堡,有一條河穿過,河上有兩個小島,有七座橋把兩個島與河岸聯繫起來(如右上圖)。有個人提出一個問題:一個步行者怎樣才能不重複、不遺漏地一次走完七座橋,最後回到出發點。後來大數學家歐拉把它轉化成一個幾何問題(如左圖下)——一筆畫問題。他不僅解決了此問題,且給出了連通圖可以一筆畫的充要條件是:奇點的數目不是0 個就是2 個(連到一點的數目如是奇數條,就稱爲奇點,如果是偶數條就稱爲偶點,要想一筆畫成,必須中間點均是偶點,也就是有來路必有另一條去路,奇點只可能在兩端,因此任何圖能一筆畫成,奇點要麼沒有要麼在兩端).
*/



圖論基礎知識——頂點

通過上文的故事版和正經版的對比,可以很容易得看出,頂點也就是問題引入中的四塊陸地——即,河的兩岸,兩個小島。

那麼,拋開這個問題,頂點又是什麼呢?

頂點在上述問題中就是所謂的

頂點(vertex)的首字母是V,所以就理所當然的,用V來代表頂點。

頂點,毫無疑問,是一個點,這個點可以有一條邊,也可以有n條邊。


圖論基礎知識——邊

既然已經講到邊了,那還是順便也提一下邊吧。

所謂邊,也就是上面例子裏提到的七座橋。

邊(edge),因首字母爲E,故簡記爲E。


在圖論中,一般,我們用G來表示圖,具體原因……還是因爲圖的英文首字母是G……

所以,一個圖常常寫作G=(V,E)。


我們可能還會見到這樣的寫法:

V={a,b,c……}

E={e1,e2,e3……}

這裏就是集合的形式了,也就是把所有的頂點和邊都分別裝到兩個分別叫V和E的塑料袋裏

→一個圖是一個有序的二元組<V,E>,記作G,其中

(1)
是有限非空集合,稱爲頂點集,其元素稱爲頂點或結點。
(2)
是有限集合,稱爲邊集,E中每個元素都有V中的結點對與之對應,稱爲邊。
邊e既可以是有向的,也可以是無向的。有向邊與有序結點對
對應,這時稱u爲e的起點,v爲e的終點。無向邊與無序結點對
對應,u,v稱爲e的兩個端點。

要注意:元素不能重複//感覺我在說廢話

也就是同一個元素只能出現一次

手繪版的小鬼圖遭到各種嘲笑,就不放這裏了,後面用到再說╮(╯▽╰)╭


採用圖這一名稱,是因爲他們可以用圖形來表示,而這種圖形表示有助於人們理解圖的許多性質。圖論中的大多數定義和概念是根據圖形表示提出來的。如果頂點v是邊e的一個端點,則稱邊e和頂點v相關聯(Incident),反之亦然。對於頂點u和v,若(u,v)∈E,則稱u和v是鄰接或相鄰(Adjacent)的;若兩條邊有共同的頂點,則也稱這兩條邊是相鄰的。

兩個端點重合的邊(度=2),稱爲環(Loop),端點不重合的邊稱爲連桿(Link)。關聯於同一對頂點的兩條或兩條以上的邊稱爲多重邊(Multiple Edge)。



§有向圖&無向圖


問題引入

首先,請大家回憶一下高中的知識——向量,當時我們老師是這麼解釋的,向量就是有方向的量。

什麼是有方向的量?直觀感受就是帶有箭頭的線段,更直接的說法就是比起標量,向量多了方向。

再換個角度,看看向量的近義詞——矢量。無論是高中物理還是初中物理都提到了一個概念——力,然後還有一種常見的入門題(受力分析):

這裏,那個帶着箭頭的G就是有向圖(雖然只有兩個頂點和一條邊)。而我們常見的圖形很多都屬於無向圖,比如上面提到的七橋問題。

如果還是覺得抽象,就聯想一下單行道(只允許一個方向通行)——這個即爲有向圖,

那種雙向N車道就可以稱爲是無向圖的邊(手動滑稽)



§度&圖的同構

在無向圖中,某個頂點的度是鄰接到該頂點的邊(或弧)的數目。
在有向圖中,度還有"入度"和"出度"之分。
某個頂點的入度,是指以該頂點爲終點的邊的數目。而頂點的出度,則是指以該頂點爲起點的邊的數目。
頂點的度=入度+出度。
而小鬼圖就是無向圖,也就是——沒有方向的圖。
先談幾點注意:
①若起點與終點重合,即邊g和邊l(稱爲——環),則該點(H點和F點的度不是加1而是加二)

②度常用deg(V)來表示,其中V代表的是頂點的名字。舉個栗子:deg(A)=1,deg(B)=1,deg(H)=5,deg(L)=6,deg(D)=6,deg(G)=6,deg(K)=2,deg(I)=1,deg(J)=3……以此類推。
④一個邊肯定最多有兩個頂點,而這條邊要不然使這兩個點的度都增加1要不然使一個點的度增加2(舉個栗子,剛剛提到的環)
⑤若G是一般圖(n階),則:
                                                 1.它所有點頂點的度的和爲偶數
                                                 2.奇點(度爲奇數的頂點——同理,偶點就是度爲偶數的頂點)的個數是偶數個
⑥度序列:
舉個栗子,還是剛剛的小鬼圖

它的度序列爲{6,5,5,5,5,5,3,2,2,1,1,1,1}

很容易看出,這個所謂度序列也就是把所有的度都寫到一個集合裏然後按降序排列。

把度爲0的頂點稱爲孤立點(Isolated Vertex),度爲1的點稱爲懸掛點(Pendant Vertex),度爲偶數的點稱爲偶點(Even Vertex),度爲奇數的點稱爲奇點(Odd Vertex)。分別用δ(G)和Δ(G)表示G中頂點的最小度(Minimum Degree),和最大度(Maximum Degree)


定義①:如果一個圖中的每個頂點的度是某一固定整數k,則稱該圖是k-正則圖(k-regular)。正則圖中δ(G)=Δ(G)。圖1-12所示爲1-正則圖和3-正則圖。

定理②:(握手引理),對每一個圖G=(V,E),均有:

顯然,任何圖中所有頂點的度的和必爲偶數。====》③


圖的同構

什麼是同構呢?

假設,我們有兩張圖G1和G2

G1=(V1,E1)

G2=(V2,E2)

    ①若V1 V2之間有一個雙射(一一映射)θ

                  θ:

                              V1→V2

    ②滿足x1,y1在G1中鄰接←→x2,y2在G2中鄰接

這樣說似乎很抽象//就是很抽象好嗎(╯‵□′)╯︵┻━┻

下面通過圖片說明:

這就是一個同構的栗子

θ:

a→u

b→v

c→w

d→x


---------------------------解釋一下--------------------------
頂點a映射到頂點u——a的度爲3,u的度也爲3,a與bcd鄰接,而u也與bcd對應的vwx鄰接
----------------------------------------------------------------------


好了,我們再舉一個例子:

我們還按照上面的方法構造

θ:

a→u

b→v

c→w

d→x


這回好像,似乎,大概,也許,不同構了

但並非如此!!!

這個構造……(╯‵□′)╯︵┻━┻,什麼鬼構造

如果按照

b→w

c→v呢

(^U^)ノ~YO==》這兩個圖還是同構的。

下面補充一個結論:

同構要求:
①點數一樣多,邊數一樣多
②度序列相同
(點數邊數一樣多不一定同構,同樣度序列相同也未必同構)
以上要求全部滿足才稱爲同構,否則必有不同構。
大家可以自己動手畫畫圖,這兩個條件都是很好找反例的。

知乎:有什麼算法能確定兩圖同構



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章