圖論:(半)尤拉圖與(半)哈密頓圖
圖論:尤拉圖與哈密頓圖
圖論最基本的要素就是點和邊,尤拉圖和哈密頓圖是分別關於點和邊的兩種特殊圖的形式。
尤拉圖側重於經過所有的點,哈密頓圖側重於經過所有的邊。
尤拉圖
尤拉路徑:一條路徑在圖G中恰好經過每條邊一次。尤拉通路:通過圖中所有邊的簡單路(其實就是每條邊經過一次)。歐拉回路:閉合的尤拉路。尤拉圖:包含歐拉回路的圖。半尤拉圖:包含尤拉通路但是不含歐拉回路的圖。
接著理解(半)尤拉圖成立的充要條件:尤拉圖: 無向圖G是一個尤拉圖當且僅當G連通且所有頂點的度數為偶。 有向圖G是一個尤拉圖當且僅當G連通且所有頂點的出度等於入度。半尤拉圖: 無向圖G是一個半尤拉圖當且僅當G連通,僅有兩個點度數為奇,其餘所有頂點的度數為偶
理解:理解無向圖就可以對比有向圖,G是尤拉圖與G是若干邊不交的圈的並,相當於從一點出發,經過很多圈,回到這個點,每個點都在圈上,也就經過了所有的點;而如果是若干邊不交的圈的並,就有每個頂點都是偶數度,因為在圈中,前後都有點相連,肯定是偶數。
半尤拉圖對比尤拉圖,一個是通路,一個是迴路,說明尤拉圖多了一個回來的功能,半尤拉圖說明,存在兩個點,這兩點從哪個出發都能經過所有點,但是回不到它自身,於是這兩個點都是奇度頂點,當且僅當,這兩個點連起來或者這兩個點是同一個點時,會變成尤拉圖,而此時,這兩個點的度數都會加1,又變成了偶數度頂點。
哈密頓圖
哈密頓通路:經過所有頂點的路徑(沒有重複點)
哈密頓迴路:經過所有頂點的圈(沒有重複點)
半哈密頓圖:具有哈密頓通路
哈密頓圖:具有哈密頓迴路
哈密頓圖的必要條件與充分條件,哈密頓圖是沒有充要條件的
無向:
哈密頓圖必要條件:
對V的任意非空真子集V1有p(G-v1)<=|V1|
半哈密頓圖必要條件:
對V的任意非空真子集V1有p(G-v1)<=|V1|+1
彼得森圖是非充分條件的反例,
它滿足哈密頓圖必要條件,但是是一個半哈密頓圖。
理解:
對於哈密頓圖的必要條件,如果v1中每個點都不相鄰,則刪除每個點都會產生一個新的連通分支,此時等號成立,如果存在兩個點相鄰,刪除這個兩個點的效果才會產生一個新的連通分支,此時小於號成立。哈密頓圖與半哈密頓圖的對比,半哈密頓圖要求更低一些。
哈密頓圖充分條件1:
任意不相鄰頂點u與v有,u的度數+v的度數>=n
哈密頓圖充分條件2:
任意不相鄰頂點個u有,u的度數>=n/2
充分條件二能推出來充分條件一,主要分析充分條件一,需要藉助無向半哈密頓圖的充分條件。
半哈密頓圖充分條件:
任意不相鄰頂點u與v有,u的度數+v的度數>=n-1
有向:
半哈密頓圖的充分條件:
D是n階競賽圖,則D是半哈密頓圖。
推論:G是n階有向圖,G含有n階競賽圖作為子圖,則G是半哈密頓圖
哈密頓圖的充分條件:
強連通的競賽圖是哈密頓圖。
尋找歐拉回路:
Fleury演算法(避橋法):
1. 總是走沒有走過的邊
2. 優先選擇非橋邊
定理:G是無向尤拉圖,避橋法終止時得到的簡單通路是歐拉回路
逐步插入迴路法:
1. 每次求出一個簡單迴路
2. 把新求出的迴路插入老迴路
哈密頓迴路:
定理:
完全圖2k+1階完全圖中同時又k條邊不重哈密頓迴路,且k條邊不重的哈密頓迴路含有所有邊。