Kezdőoldal » Számítástechnika » Programozás » Segítségre lenne szükségem...

Segítségre lenne szükségem c++ban?

Figyelt kérdés

Szóval az infótanárnőm beteg lett (kórházban van) és én továbbjutottam egy versenyben,

és szükség volna a gráfok ismeretére, nemtudom hogyan lehet őket deklarálni, használni? Tudna valaki 1 kicsit segíteni?



2014. febr. 27. 18:07
1 2
 1/13 iostream ***** válasza:
Nincsenek gráfok a standard C++-ban. Specifikáld, hogy milyen könyvtárat használsz.
2014. febr. 27. 18:22
Hasznos számodra ez a válasz?
 2/13 A kérdező kommentje:

Azt hiszem valahogy ugy lehet oket deklaralni hogy:

struct graf

{

// nemtudom mi

}

2014. febr. 27. 18:36
 3/13 A kérdező kommentje:

hasonlóan deklaráltuk többféle típusu mátrixhalmazt.

pl gondolok arra hogy

struct array

{

int f; char d;

}T[100]// elemek száma


És akkor úgy irtunk bele pl. egy for után (i a lépésszám) T[i].f= egy szám T[i].d= egy betű;

2014. febr. 27. 18:39
 4/13 anonim ***** válasza:

Struct/class pont arra jó, hogy már létező elemekből építhetsz saját adatszerkezetet. Innentől kezdve rád van bízva, hogy hogyan teszed meg.


Pl. megtehetnéd azt, hogy int a-től z-ig deklarálsz változót, ami ha 0, akkor nincs az a csúcs, ha 1 akkor van. És utána ael, bel, stb vel egy tömbben tárolod, hogy melyik csúcsokhoz vezet belőle él. Pl. az (a,c) él egy egyesként megjelenik az ael[2] és cel[0]-ban. Ez így végülis korrekt (bár erősen limitált a csúcsok számában) és nyilván senki az életben nem fogja implementálni így.


Amúgy, hogy a kérdésre is válaszoljak, talán a legáltalánosabb a mátrixxal történő megadása egy gráfnak:

[link]


Tehát egy 2D tömb bőven elég, nem feltétlenül kell struct hozzá.


Persze még ezerféleképp meg lehetne adni egy gráfot. Egy fa esetén adja magát a fa adatstruktúra.

2014. febr. 27. 18:57
Hasznos számodra ez a válasz?
 5/13 A kérdező kommentje:

struct-al akkor érdemes dolgozni ha kevés az elemszám,

2Dmátrixal meg nem értem hogy miszerint 0, 1 az adott koordinataban levo elem.

2014. febr. 27. 19:07
 6/13 anonim ***** válasza:
te komolyan továbbjutottál egy programozói versenyen?? hát ez kész
2014. febr. 27. 19:12
Hasznos számodra ez a válasz?
 7/13 anonim ***** válasza:

A struct teljesen független az elemszámtól. Több változó, függvény és operator közti összefüggőséget lehet vele mutatni (és ehhez megfelelően lehet elérhetőséget állítani benne).


A csúcsok címezve vannak 1-től n-ig. Képzelj el egy táblázatot, amelyik jobb oldalán is a csúcsok vannak felsorolva és a tetején is. Egy rublikába, akkor írsz egyest ha van köztük él, különben 0-s. Eldobod a fejléceket és voilá.


Nyilván az egyszerű gráf esetén erősen redundáns, hisz a felső és alsó háromszögban ugyanazt látod, illetve a főátlóban csak 0 lehet. (Meg aztán csak 0 és 1-ből áll az egész), de minnél több mindent akarsz leírni annál kihasználtabb lesz a mátrix (jó ezt most nem sikerült jól megfogalmaznom):

ha írányítod az éleket, akkor már lehet más a felső és alsó háromszög. (vagy előjelezheted)

ha van hurok él, akkor a főátlóban is lehet él.

ha párhuzamos vagy súlyozott élek vannak, akkor egyes helyett más is szerepelhet.

2014. febr. 27. 19:17
Hasznos számodra ez a válasz?
 8/13 A kérdező kommentje:
Mondom hogy nem tanultunk a grfáfokról nincs honnan tudjam....
2014. febr. 27. 19:39
 9/13 A kérdező kommentje:
Köszönöm a #7 válaszát mostmár értem!
2014. febr. 27. 19:42
 10/13 anonim ***** válasza:

[link]


Ezeket ha sorban elolvasgatod, sokat fog segíteni. A gráfok a 12. hétnél vannak.

2014. febr. 27. 21:11
Hasznos számodra ez a válasz?
1 2

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!