You are on page 1of 19

GRAFET

• LUAN SADIKU

Luan Sadiku
Java 12

• Grafet
• Algoritmet themelore të grafeve/ fqinjët

• Përshkimi i grafit

• Pema e shtrirjes minimale

• Shtegu më i shkurtër – Alg. i Dijkstras

Luan Sadiku

2
GRA
FET
• Grafi G është koleksion V(G) i këndeve (nyjave) dhe
koleksion
E(G) i degëve.
a b c d

e f g h

i j k l

V = {a, b, c, d, e, f, g, h, i, j, k, l }
E = { (a, b), (a, e), (b, e), (b, f), (c, j), (c, g), (c, h), (d, h), (e, j), (g, k), (g, l), (g, h), (i,
j) }
Luan Sadiku

3
• Përdorimi
• Internet
• Trafik rrugor
• Rrjete sociale
• Gjeometri
• Në shumë sfera tjera…

• Grafi mund të jetë


• i drejtuar (degët/rrugët mund të përshkohen vetëm në njërin
drejtim - digraf)
• i padrejtuar (degët/rrugët mund të përshkohen në dy drejtimet)
Luan Sadiku

4
Grafi i drejtuar dhe i padrejtuar

d
f e a

b f
c a b
c
e
d e

Luan Sadiku

5
o Në këtë shembull do të tregohet
implementimi i përmes
distancës në mes qyteteve.
grafeve

Luan Sadiku

6
PËRSHKRIMI I
GRAFIT
• Breadth-First Search (BFS)
• Algoritëm për përshkim dhe kërkim të structures
së të dhënave në pemë ose graf. A

B C D

• Depth-First Search (DFS) E F

• Algoritëm për përshkim dhe kërkim në pemë ose


graf. Fillon në rrënjë dhe eksploron aq sa është e
mundur para se të bëjë backtracking.L
A
0
L B C D
1

Luan Sadiku
L E F
2
7
BFS

0 1 0

1 4
2 4 2

9
5
10 5 7 9 10

11 6
6 8
7 11
8

Grafi G Pema BFS


Luan Sadiku

8
DFS

0
0 1
1
2 4
4
9

7 2
10 5

11 5 9
6 8
6 7 11

8 10

Grafi G Pema DFS


Luan Sadiku
o Në këtëshembull do të
tregohet algoritmi BFS.

Luan Sadiku
o Në këtëshembull do të
tregohet algoritmi DFS.

Luan Sadiku
PEMA E SHTRIRJES
MINIMALE

• Pema e shtrirjes së një grafi të pa drejtuar G është nën-


grafi i G-së i cili përmban të gjitha nyjat e G.

• Në një graf të peshuar, pesha e një nën grafi është


shuma e peshave të degëve në nën graf.

• Pema e shtrirjes minimale (MST) për një graf të


peshuar të pa drejtuar është pemë e shtrirjes ku
shuma e peshave për degët ka peshën minimale.

Luan Sadiku
PEMA E SHTRIRJES
MINIMALE

2 2
c b c b
4 3 3
2 3 5
1 1
a a
4
e e
8
2 2
d d

Grafi i pa drejtuar dhe pema e shtrirjes minimale.


Luan Sadiku
ALGORITMI
DIJKSTRA-PRIM
• Algoritmi për gjetjen e pemës së shtrirjes minimale u
zhvilluar nga Dijkstra dhe Prim në fund të viteve ‘50.
• Ata përdoren një algoritëm lakmitar/pa ngopur
të quajtur “greedy”
Përzgjidh nyjën f i l l e s t a r e
Ndërto “vijat” nga ny j a f i l l e s t a r e
While (Gjersa) ka akoma nyje t ë
mbetura, përzgj idh
degën me peshën me t ë vogël
• shto nyjëne shoqëruar/bashkuar/lidhur në
pemë
• Përditëso “vijat” duke:
• shto n y j a t në periferi (të lidhura)
me nyjën
e
Luan Sadiku
re
•Përditëso degët ashtu që t ë jenë më t ë voglat
o Në këtë shembull do të tregohet
algoritmi “greedy” për shtrirjen
minimale (Prim’s Minimum Spanning
Tree)

Luan Sadiku
Luan Sadiku
ALGORITMI I
DIJKSTRA-S

• Single-Source Shortest Path Problem – problemi i


gjetjes së rrugës më të shkurtër nga nyja burim tek të
gjitha nyjat tjera në graf.

• Përdorimi
• Koha e fluturimit të aeroplanëve
• Kostoja e komunikimit telefonik
• Koha e përgjigjes në rrjeta kompjuterike
• Agjentët tregtar
• …
Luan Sadiku
o Në këtëshembull do të
tregohet algoritmi i Dijkstra-s.

Luan Sadiku
o Në këtëshembull do të
tregohet algoritmi i Dijkstra-s.

Luan Sadiku

You might also like