Upload
duongthien
View
232
Download
0
Embed Size (px)
Citation preview
Representasi graph:
1. Adjacency list
2. Adjacency matrix
3. Incidence matrix
Contoh:
undirected graph
Adjacency list
1: 2 tiap vertex v
2: 1, 3, 4 di-link dengan
3: 2, 4, 5 semua vertex yang
4: 2, 3, 5 adjacent dengan v
5: 3, 4
Representasi graph:
1. Adjacency list
2. Adjacency matrix
3. Incidence matrix
Contoh:
undirected graph
110000
101100
011010
000111
000001
01100
10110
11010
01101
00010
2
4
1
e6
5
3
e3 e5
e4
e1
e2
Adjacency matrix
baris : vertexkolom: vertex
Incidence matrix
baris: vertexkolom: edge
Representasi graph:
1. Adjacency list
2. Adjacency matrix
Contoh:
directed graph
Adjacency list
1: -- tiap vertex v
2: 1 di-link dengan
3: 2, 4 semua vertex yang
4: 2, 5 adjacent to v
5: 3
Representasi graph:
1. Adjacency list
2. Adjacency matrix
Contoh:
directed graph
2
4
1
e6
5
3
e3 e5
e4
e1
e2
Adjacency matrix
baris : vertexkolom: vertex
00100
10010
01010
00001
00000
Isomorfisme: G1 = (V1, E1) dan G2 = (V2, E2)disebut isomorfik jika ada
f : V1 V2 (f disebut isomorfisme)
Fungsi f adalah 1-1 correspondence jika dan hanya jika
vertex a adjacent to vertex b di G1
vertex f(a) adjacent to vertex f(b) di G2
Isomorfisme: G1 = (V1, E1) dan G2 = (V2, E2)disebut isomorfik jika ada
f : V1 V2 (f disebut isomorfisme)
Fungsi f adalah 1-1 correspondence jika dan hanya jika
vertex a adjacent to vertex b di G1
vertex f(a) adjacent to vertex f(b) di G2
ap
bq
Contoh: isomorfisme
graph G = (V1, E1) graph H = (V2, E2)
c d r s
a
b
c
d
p = f(a)
s = f(b)
r = f(c)
q = f(d)
(a, b) (p, s)
(a, c) (p, r)
(b, d) (s, q)
(c, d) (r, q)
fV1
V2
q
r
p
s
u1u2
u3
u5 u6
v1 v3
v2v6
Graph G Graph H
e1
e2
e3
e4
e5
e6
u3u4 v4
v5
v2
v4
v3v6
v5
v1
e7
e6
e3
e7
e4e2
e5
e1
u1u2
u3u4
u5 u6
v1v3
v2 v6
v4
Graph G Graph H
v5
v2
v4
v3v6
v5
v1
010010
101000
010101
001010
100101
001010
010010
101000
010101
001010
100101
001010v6
v3
v4
v5
v1
v2
u1
u2
u3
u4
u5
u6
adjacency matrix G adjacency matrix H
v6 v3 v4 v5 v1 v2
Invariance dari dua simple graphs yang isomorfik:
1. Banyaknya vertex dalam kedua graphs harus sama
2. Banyaknya edge dalam kedua graphs harus sama
3. Derajat (degree) dari vertex v = derajat dari vertex f(v)
di sini f adalah isomorfisme (fungsi) kedua graphs tersebut
Invariance dari dua simple graphs yang isomorfik:
1. Banyaknya vertex dalam kedua graphs harus sama
2. Banyaknya edge dalam kedua graphs harus sama
3. Derajat (degree) dari vertex v = derajat dari vertex f(v)
di sini f adalah isomorfisme (fungsi) kedua graphs tersebut
Graph G = (V, E)di mana V = {x0, x1, x2, … , xn } dan E = { e1, e2, …, en }
Lintasan (path):Yang disebut lintasan dalam graph G adalah e1, e2, …, en di mana f(e1) = {x0,x1}, f(e2) = {x1, x2}, …, f(en) = {xn-1, xn }
x0 x1 xn-1 xnx0 x1 xn-1 xn
e1 …..… en
Circuit (cycle) : lintasan {x0, x1}, {x1, x2}, …, {xn-1, x0 }
x0
x1
x2
xn-1
Catatan:
1. Lintasan / cycle melewati vertices x1, x2, …, xn-1
atau melakukan traversal sepanjang edges e1, e2, …, en
2. Panjang lintasan / cycle = n
3. Lintasan / cycle disebut simple jika tidak berisi suatuedge lebih dari satu kali
Catatan:
1. Lintasan / cycle melewati vertices x1, x2, …, xn-1
atau melakukan traversal sepanjang edges e1, e2, …, en
2. Panjang lintasan / cycle = n
3. Lintasan / cycle disebut simple jika tidak berisi suatuedge lebih dari satu kali
Connectivity:
Undirected graph:
antara setiap pasangan vertex terdapat suatu lintasan (path)
Directed graph:
1. Strong connection: ada lintasan antara vertex a dan vertex b,sebaliknya ada juga lintasan antara vertex b dan vertex a.
2. Weak connection: ada lintasan antara dua vertex dalamunderlying undirected graph-nya.
Connectivity:
Undirected graph:
antara setiap pasangan vertex terdapat suatu lintasan (path)
Directed graph:
1. Strong connection: ada lintasan antara vertex a dan vertex b,sebaliknya ada juga lintasan antara vertex b dan vertex a.
2. Weak connection: ada lintasan antara dua vertex dalamunderlying undirected graph-nya.
Komponen sebuah graph:
1. Graph G = (V, E) tidak terhubung
2. Masing-masing subgraph yang terhubung disebut komponendari graph G
Contoh: a b e
Komponen sebuah graph:
1. Graph G = (V, E) tidak terhubung
2. Masing-masing subgraph yang terhubung disebut komponendari graph G
Contoh: a b
c
e
fd
G = (V, E); V = { a, b, c, d, e, f }
Ada 2 komponen G: G1 dan G2
G1 G2
Cut vertex:
Sebuah vertex v dengan semua edges yang incident pada vdihapus dari sebuah graph G = (V, E)
Hasilnya adalah graph G’ dengan komponen lebih banyak daripada komponen graph G
Maka v disebut cut vertex
Bridge:
Sebuah edge e dihapus dari sebuah graph G = (V, E)
Hasilnya adalah graph G’ dengan komponen lebih banyak daripada komponen graph G
Maka e disebut bridge
Cut vertex:
Sebuah vertex v dengan semua edges yang incident pada vdihapus dari sebuah graph G = (V, E)
Hasilnya adalah graph G’ dengan komponen lebih banyak daripada komponen graph G
Maka v disebut cut vertex
Bridge:
Sebuah edge e dihapus dari sebuah graph G = (V, E)
Hasilnya adalah graph G’ dengan komponen lebih banyak daripada komponen graph G
Maka e disebut bridge
Isomorfisme dan lintasan:
Salah satu cara mendeteksi isomorfisme antara dua graphs adalahdengan memeriksa apakah kedua nya memiliki cycle denganpanjang berbeda.
Contoh:
Graph G Graph H
cycle-1 cycle-1
cycle-2
cycle-2
Invariance dua graphs yang isomorfik:
1. Banyaknya vertex dalam kedua graphs harus sama
2. Banyaknya edge dalam kedua graphs harus sama
3. Derajat (degree) dari vertex v = derajat dari vertex f(v)
di sini f adalah isomorfisme (fungsi) kedua graphs tersebut
4. Jika dalam graphs terdapat cycle, maka panjang cycle yangbersesuaian dalam kedua graphs harus sama
Invariance dua graphs yang isomorfik:
1. Banyaknya vertex dalam kedua graphs harus sama
2. Banyaknya edge dalam kedua graphs harus sama
3. Derajat (degree) dari vertex v = derajat dari vertex f(v)
di sini f adalah isomorfisme (fungsi) kedua graphs tersebut
4. Jika dalam graphs terdapat cycle, maka panjang cycle yangbersesuaian dalam kedua graphs harus sama
Banyaknya lintasan dalam sebuah graph dapat ditentukan olehadjacency matrix graph tersebut.
Artinya:
Dalam matriks A : aij = 1 berarti ada 1 lintasan dengan panjang 1(ada 1 edge) antara vertex-i dan vertex-j
Dalam matriks A2 : aij = k berarti ada k lintasan dengan panjang 2antara vertex-i dan vertex-j
Dalam matriks A3 : aij = m berarti ada m lintasan dengan panjang 3antara vertex-i dan vertex-j
Demikian seterusnya.
Banyaknya lintasan dalam sebuah graph dapat ditentukan olehadjacency matrix graph tersebut.
Artinya:
Dalam matriks A : aij = 1 berarti ada 1 lintasan dengan panjang 1(ada 1 edge) antara vertex-i dan vertex-j
Dalam matriks A2 : aij = k berarti ada k lintasan dengan panjang 2antara vertex-i dan vertex-j
Dalam matriks A3 : aij = m berarti ada m lintasan dengan panjang 3antara vertex-i dan vertex-j
Demikian seterusnya.
Contoh:
ba
d c
A =
0110
1001
1001
0110
A2 = A3 =
2002
0220
0220
2002
0440
4004
4004
0440A2 = A3 =
2002
0220
0220
2002
0440
4004
4004
0440
2002
0220
0220
2002
Contoh:
ba
d c
A =
0110
1001
1001
0110A2 = =
0110
1001
1001
0110
0110
1001
1001
0110
ada 2 lintasan dari a ke a dengan panjang 2
2002
0220
0220
2002
0110
1001
1001
0110A2 = =
0110
1001
1001
0110
Lintasan dari a ke a dengan panjang 2: a-b-a, a-c-a
Lintasan dari c ke b dengan panjang 2: c-d-b, c-a-b
panjang
lintasan
Contoh:
ba
d c
A =
A3 = =
0110
1001
1001
0110
0110
1001
1001
0110
2002
0220
0220
2002
0440
4004
4004
0440A3 = =
0110
1001
1001
0110
2002
0220
0220
2002
0440
4004
4004
0440
ada 4 lintasan dari a ke b dengan panjang 3:
a-b-a-b a-c-d-b a-b-d-b a-c-a-b
Tree/ Pohon
• Tree/ Pohon adalah sebuah graph yangmempunyai n buah vertex, n – 1 edge dan tidakmempunyai cycle serta merupakan graphterhubung.
• Hubungan antara tree/pohon(T), titik(V), danrusuk(E) dapat dinyatakan dengan E = V - T
• Tree/ Pohon adalah sebuah graph yangmempunyai n buah vertex, n – 1 edge dan tidakmempunyai cycle serta merupakan graphterhubung.
• Hubungan antara tree/pohon(T), titik(V), danrusuk(E) dapat dinyatakan dengan E = V - T
Spanning Tree
Sebuah pohon katakanlah T disebutspanning tree dari sebuah graph G, jika Tadalah subgraph dari G yang mencakupsemua titik graph G
G T
Sebuah pohon katakanlah T disebutspanning tree dari sebuah graph G, jika Tadalah subgraph dari G yang mencakupsemua titik graph G
G Tv
Minimal Spanning TreeSebuah pohon katakanlah T disebut Minimalspanning tree dari sebuah graph G, jika T adalahsubgraph dari G yang mencakup semua titik graphG dan memiliki jumlah bobot/label minimal
Sebuah pohon katakanlah T disebut Minimalspanning tree dari sebuah graph G, jika T adalahsubgraph dari G yang mencakup semua titik graphG dan memiliki jumlah bobot/label minimal
v
4 112 6 7 5
11 148 13 3 9
2 10
d e f
g h i
4 16
8 3 92
5