CATEGORII DOCUMENTE |
Astronomie | Biofizica | Biologie | Botanica | Carti | Chimie | Copii |
Educatie civica | Fabule ghicitori | Fizica | Gramatica | Joc | Literatura romana | Logica |
Matematica | Poezii | Psihologie psihiatrie | Sociologie |
ALGORITMUL INMULTIRII LATINE (KAUFMANN)
Algoritmul inmultirii latine serveste in principal pentru determinarea drumurilor de o anumita lungime.
Fie graful G= (X,F) = (X,A) .
Pasul 1
Asociem grafului o matrice a arcelor (conexiunilor directe) care in locul cifrelor 1 din MG contine arcele corespunzatoare, reprezentate prin varfurile care le compun. Notam aceasta matrice (numita matrice latina) cu T(1) = (tij)i,j = 1,n, unde
tij =
Pasul 2
Formam matricea T(0) = (ti,j = 1,n, numita matricea destinatiilor posibile, care se obtine prin suprimarea extremitatii initiale a fiecarui arc din matricea T(1).
t
Pasul 3
Cu matricele T(1) si T(0) , in aceasta ordine, se efectueaza operatia de inmultire latina (notata cu L) sau concaternare astfel :
c1) daca unul din elementele participante la calcul este 0 rezultatul va fi 0.
c2) atunci cand se inmulteste un arc din matricea T(1) cu un varf din matricea T(0), rezultatul operatiei se consemneaza scriind consecutiv varfurile care intervin in calcul (obligatoriu cu mentinerea ordinei in care apar varfurile).
Pasul 4
Fie T(2) = T(1) L T(0)
Introducem relatia de recurenta T(r + 1) = T(r) L T(0), rN*.
Matricea T(m), cu mN* va contine lista tuturor drumurilor de lungime m ( adica formate din m arce) in graful dat.
Exemplu
Sa se determine drumurile de lungime 2 si 3 in graful a carui matrice este:
MG
Pasul 1
Scriem matricea T(1)
Pasul 2
Scriem matricea destinatiilor posibile T(0)
Pasul 3
Calculam T(2) = T(1) L T(0) care ne va arata drumurile de lungime 2.
T(2) = T(1) L T(0) L
Pasul 4
Calculam T(3) = T(2) L T(0) care va evidentia drumurile de lungime 3.
T(3) = T(2) L T(0) L
Concluzie :
Ø Graful contine 4 drumuri de lungime 2 si anume d1 = (x1, x3, x2), d2 = (x2, x1, x3),
d3 = (x2, x1, x4), d4 = (x3, x2, x1) si nu exista circuite de lungime 2.
Ø Graful contine 4 drumuri de lungime 3 din care 3 circuite si un drum hamiltonian, si anume : d5 = (x1, x3, x2, x1), d6 = (x2, x1, x3, x2), d7 = (x3, x2, x1, x3), d8 = (x3, x2, x1, x4),
Determinarea drumurilor si circuitelor hamiltoniene in grafuri cu circuite
Definitie
Un circuit CH = (xi1, xi2, , xin, xi1) se numeste hamiltonian daca trece o data si numai o data prin fiecare varf al grafului cu exceptia varfului xi1.
Observatie
Ø Pentru determinarea drumurilor si/sau circuitelor hamiltoniene intr-un graf cu n varfuri se calculeaza prin algoritmul inmultirii latine matricea T(n), cu precizarea ca in matricele T(r), r, se considera t daca secventa indicilor varfurilor t si t contine doi indici identici pentru orice k (daca in rezultatul inmultirii se repeta doua varfuri).
Ø Existenta unui element diferit de 0 pe diagonala uneia dintre matricele T(r) care intervin in algoritm indica atat existenta unui circuit hamiltonian cat si ordinea varfurilor.
PROBLEME:
MG =
MG =
MG =
a) sa se determine dH daca exista
b) sa se listeze drumurile de lungime 3 din G
MG =
Sa se determine matricea drumurilor si apoi, folosind inmultirea latina, sa se identifice in G circuitele de lungime 4.
a) Sa se determine matricea drumurilor in G
b) Sa se listeze drumurile de lungime 4 si sa se identifice, daca exista, dH.
Politica de confidentialitate | Termeni si conditii de utilizare |
Vizualizari: 5387
Importanta:
Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved