Documente Academic
Documente Profesional
Documente Cultură
2302_ISE
TEMA 1 – TIA
Să se realizeze un program de calcul utilizând mediul Matlab pentru a realiza parcurgerea grafului din
figură utilizând strategia de căutare în lățime, considerând ca nod de început Nodul 4. Programul trebuie
să afișeze ordinea de parcurgere a nodurilor.
Program:
matriceaIncidenta = zeros(16,16);
a = [1, 1, 1, 2, 2, 2, 3, 3, 4, 4, 5, 5, 5, 6, 7, 8, 8, 8, 8, 9, 10, 10, 11, 11, 11, 12, 13, 14, 15, 16];
b = [2, 3, 4, 1, 5, 6, 7, 1, 8, 1, 2, 9, 10, 2, 3, 4, 11, 12, 13, 5, 5, 14, 15, 16, 8, 8, 8, 10, 11, 11];
c = [];
d = [];
for x = 1:length(a)
matriceaIncidenta(a(x),b(x)) = 1;
end
disp(matriceaIncidenta);
start = 4;
frontier = [];
territory = [];
visited = [];
disp(frontier);
for y = 1:length(matriceaIncidenta(1,:))
c = [c, frontier(1)];
d = [d, y];
end
end
visited = [visited,frontier(1)];
disp(visited)
territory = [territory,frontier(1)];
disp(territory)
frontier(1) = [];
disp(frontier)
end
disp(territory)
grafic_rute = digraph(c,d);
p = plot(grafic_rute,'Layout','layered');
Răspuns:
Matricea incidenta :
0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
1 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0
1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 1 0 0 0 0 0 0 1 1 1 0 0 0
0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0
0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 1
0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0
Nod actual :
Frontiera actuala :
Noduri vizitate :
Teritoriul actual :
Nod actual :
Frontiera actuala :
1 8
Noduri vizitate :
4 1
Teritoriul actual :
4 1
8 2 3
Nod actual :
Frontiera actuala :
8 2 3
Noduri vizitate :
4 1 8
Teritoriul actual :
4 1 8
Frontiera dupa vizitare nod actual :
2 3 11 12 13
Nod actual :
Frontiera actuala :
2 3 11 12 13
Noduri vizitate :
4 1 8 2
Teritoriul actual :
4 1 8 2
3 11 12 13 5 6
Nod actual :
Frontiera actuala :
3 11 12 13 5 6
Noduri vizitate :
4 1 8 2 3
Teritoriul actual :
4 1 8 2 3
Frontiera dupa vizitare nod actual :
11 12 13 5 6 7
Nod actual :
11
Frontiera actuala :
11 12 13 5 6 7
Noduri vizitate :
4 1 8 2 3 11
Teritoriul actual :
4 1 8 2 3 11
12 13 5 6 7 15 16
Nod actual :
12
Frontiera actuala :
12 13 5 6 7 15 16
Noduri vizitate :
4 1 8 2 3 11 12
Teritoriul actual :
4 1 8 2 3 11 12
13 5 6 7 15 16
Nod actual :
13
Frontiera actuala :
13 5 6 7 15 16
Noduri vizitate :
4 1 8 2 3 11 12 13
Teritoriul actual :
4 1 8 2 3 11 12 13
5 6 7 15 16
Nod actual :
Frontiera actuala :
5 6 7 15 16
Noduri vizitate :
4 1 8 2 3 11 12 13 5
Teritoriul actual :
4 1 8 2 3 11 12 13 5
6 7 15 16 9 10
Nod actual :
Frontiera actuala :
6 7 15 16 9 10
Noduri vizitate :
4 1 8 2 3 11 12 13 5 6
Teritoriul actual :
4 1 8 2 3 11 12 13 5 6
7 15 16 9 10
Nod actual :
Frontiera actuala :
7 15 16 9 10
Noduri vizitate :
4 1 8 2 3 11 12 13 5 6 7
Teritoriul actual :
4 1 8 2 3 11 12 13 5 6 7
15 16 9 10
Nod actual :
15
Frontiera actuala :
15 16 9 10
Noduri vizitate :
4 1 8 2 3 11 12 13 5 6 7 15
Teritoriul actual :
4 1 8 2 3 11 12 13 5 6 7 15
16 9 10
Nod actual :
16
Frontiera actuala :
16 9 10
Noduri vizitate :
4 1 8 2 3 11 12 13 5 6 7 15 16
Teritoriul actual :
4 1 8 2 3 11 12 13 5 6 7 15 16
9 10
Nod actual :
Frontiera actuala :
9 10
Noduri vizitate :
4 1 8 2 3 11 12 13 5 6 7 15 16 9
Teritoriul actual :
4 1 8 2 3 11 12 13 5 6 7 15 16 9
10
Nod actual :
10
Frontiera actuala :
10
Noduri vizitate :
4 1 8 2 3 11 12 13 5 6 7 15 16 9 10
Teritoriul actual :
4 1 8 2 3 11 12 13 5 6 7 15 16 9 10
14
Nod actual :
14
Frontiera actuala :
14
Noduri vizitate :
4 1 8 2 3 11 12 13 5 6 7 15 16 9 10 14
Teritoriul actual :
4 1 8 2 3 11 12 13 5 6 7 15 16 9 10 14
Teritoriu final :
4 1 8 2 3 11 12 13 5 6 7 15 16 9 10 14
>> 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
1 0 0 0