17.04.2013 Views

matematici aplicate în economie - "Lucian Blaga" din Sibiu

matematici aplicate în economie - "Lucian Blaga" din Sibiu

matematici aplicate în economie - "Lucian Blaga" din Sibiu

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Fig.19<br />

Algoritmul lui Yu Chen. Acest algoritm pentru aflarea componentelor tare conexe folose¸ste<br />

ideea de lucru de la algoritmul lui Chen pentru determinarea matricei drumurilor.<br />

Pasul 1. Se scrie matricea booleană B a grafului (X, Γ).<br />

Pasul 2. Se determină toate drumurile care pleacă <strong>din</strong>x1 spre alte vârfuri, procedând ca<br />

la pa¸sii 2 ¸si 3 de la algoritmul Yu Chen pentru determinarea matricei drumurilor, adică<br />

se introduc prin adunare booleană toate cifrele de pe linia <strong>în</strong>tâi. Notăm cu V1 mult¸imea<br />

vârfurilor care au cifra 1 pe linia <strong>în</strong>tâi astfel obt¸inută.<br />

Pasul 3. Ca la pasul 2 procedăm pe coloana <strong>în</strong>tâi, determinând toate vârfurile care sunt<br />

legate prin drumuri cu x1. Notăm cu V2 mult¸imea vârfurilor care au cifra 1 pe coloana<br />

<strong>în</strong>tâi astfel obt¸inută.<br />

Pasul 4. Determinăm prima componentă tare conexă, luând C1 =(V1 ∩ V2) ∪{x1}.<br />

Pasul 5. În matricea B se elimină liniile ¸si coloanele care au vârfurile <strong>în</strong> C1. La matricea<br />

obt¸inută se aplică, <strong>din</strong> nou pa¸sii 2–5. Se aplică algoritmul până se epuizează vârfurile<br />

grafului.<br />

Exemplul 6.2.5. Să considerăm graful <strong>din</strong> figura 20. Să-i aflăm componentele tare conexe.<br />

Fig.20<br />

Scriem matricea booleană ata¸sată grafului:<br />

B =<br />

x1 x2 x3 x4 x5 x6 x7 x8<br />

x1 0 1 1 0 0 0 0 0<br />

x2 0 0 0 0 0 0 0 0<br />

x3 0 1 0 1 0 0 0 1<br />

x4 0 1 0 0 1 0 0 0<br />

x5 0 1 0 0 0 1 0 0<br />

x6 0 1 0 0 1 0 0 0<br />

x7 0 0 0 1 0 1 0 1<br />

x8 1 0 0 1 0 0 1 0<br />

Determinăm toate legăturile prin drumuri ce pleacă <strong>din</strong>x1 spre alte vˆrfuri:<br />

x1 x2 x3 x4 x5 x6 x7 x8<br />

x1 1 ∗∗ 1 1 1 ∗ 1 ∗∗ 1 ∗∗∗ 1 ∗∗ 1 ∗<br />

de unde V1 = {x1,x2,x3,x4,x5,x6,x7,x8}.<br />

Procedăm la fel pe coloana <strong>în</strong>tâi, scriind tabelul, pentru <strong>economie</strong> de spat¸iu, tot pe<br />

orizontală<br />

x1 1 ∗∗ 1 ∗ 1 ∗ 1<br />

x1 x2 x3 x4 x5 x6 x7 x8<br />

106

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!