Pereiti prie turinio

C# Duomenu struktura


Rekomenduojami pranešimai

Sveiki, taigi reikia duomenu struktura susikurti, kurioje butu saugoma: Miestu sarasas (virsunes), bei keliai jungiantys kiekviena miesta(briaunos) ir atstumai tarp tu miestu (svoriai), kurios rodytu sujungtus miestus. Isivaizduot galima kaip zemelapi. Pasiulykit ant C# kalbos ka naudot, kad galeciau saugot tokia info ir poto panaudojant DFS, BFS algoritmus rasti kelius visus. Tai butu TSP - keliaujancio pirklio uzdavinys. Galima susikurt dvimate matrica, bet tarkim noresiu dadet nauja miesta ir idt kelius su atstumais tai man nepavyks, taip?

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Bent jau man patogausia:

list<pair<int, int> > d[];

 

Čia d[j] būtų sąrašas viršūnei j gretimų viršūnių; pair<int, int> – briauna, kurios pirmas narys yra gretimos viršūnės numeris, o antrasis – briaunos ilgis. Lengva įterpti briauną, greitas pašalinimas, itin tinkama DFS'ui ir BFS'ui. Ant C# rasi atitinkamas struktūras, gal kartais vietoj pair<> teks savo struktūrą pasirašyti.

 

Jei norėsi pridėti miestų, gali atitinkamai pasidaryti didesnį masyvą arba vietoj jo naudoti vektorių:

 

vector<list<pair<int, int> > > d;

Redagavo wi_lius
Nuoroda į pranešimą
Dalintis kituose puslapiuose

Prisijunkite prie diskusijos

Jūs galite rašyti dabar, o registruotis vėliau. Jeigu turite paskyrą, prisijunkite dabar, kad rašytumėte iš savo paskyros.

Svečias
Parašykite atsakymą...

×   Įdėta kaip raiškusis tekstas.   Atkurti formatavimą

  Only 75 emoji are allowed.

×   Nuorodos turinys įdėtas automatiškai.   Rodyti kaip įprastą nuorodą

×   Jūsų anksčiau įrašytas turinys buvo atkurtas.   Išvalyti redaktorių

×   You cannot paste images directly. Upload or insert images from URL.

Įkraunama...
  • Dabar naršo   0 narių

    Nei vienas registruotas narys šiuo metu nežiūri šio puslapio.

×
×
  • Pasirinkite naujai kuriamo turinio tipą...