Hirdetés

Új hozzászólás Aktív témák

  • Joooe

    tag

    válasz Gerghu #2380 üzenetére

    Én inkább egy bitmátrixot tartanék megfelelőnek erre a feladatra.
    A memóriában az is elfér (10000^2/8 = kb. 12 MB)
    Bár elgondolkodtató, hogy ez a megközelítés nem használja ki az élek relatíve alacsony számát.

    Ami gyorssá teheti a megvalósítást, hogy ha a mátrix azt mutatja, hogy az i-edik csúcsból elérhető a j-edik, akkor a j-edik sort hozzá VAGY-oljuk az i-edik sorhoz, ezzel tovább bővítve az i-ből elérhető csúcsok listáját, azokkal ami j-n keresztül elérhető.

    Ez mindenféle implementációban elvégzendő művelet, hogy megvizsgáljuk, hogy mi van ha arra megyünk, de azt hiszem így tudjuk leggyorsabban megtenni. Így processzortól függően egyetlen művelet során nagyon sok (64?) csúcsra történik meg a vizsgálat.

    Az még egy kicsit elgondolkodtató, hogy mikor végeztünk, hiszen ezt többször el kell végezni, de ha végeztünk, akkor azokat a csúcsokat listázzuk amire mátrix[i,i]=1, azaz elérhető magából maga, azaz tagja valamely irányított körnek.



    [Szerkesztve]

    [Szerkesztve]

Új hozzászólás Aktív témák