Tablica dwuwymiarowa
Ostatnio zmodyfikowano 2015-08-21 23:53
Anim Temat założony przez niniejszego użytkownika |
Tablica dwuwymiarowa » 2015-08-21 22:19:28 Ponownie dzisiaj ja :)
Mam takie pytanie, potrzebuję czegoś w rodzaju dwuwymiarowej tablicy. Jednak tablica dwuwymiarowa nie spełnia swojego zadania, ponieważ ja potrzebuję tablicy 10k x 10k... z czego mogę skorzystać ? myślałem o kontenerze lub liście, ale nie do końca wiem jakbym mógł tam wrzucić "dwa wymiary". Pomoże ktoś ? jakiś pomysł? |
|
notabigthreat |
» 2015-08-21 22:24:42 |
|
Vister26 |
» 2015-08-21 22:26:07 Przecież ta ogromna tablica zajmie ci 100+ MB! Pomijając to, dlaczego uważasz że dwuwymiarowa statyczna tablica się nie nada? |
|
Cansisti |
» 2015-08-21 22:51:09 Nawet jeśli to będzie tablica jedno bajtowych wartości to zajmie ci 100 MB - wątpię żebyś miał komputer z takim RAMem :) Dobrym rozwiązaniem w takim wypadku (i chyba jedynym) jest użycie plików tymczasowych. I dodatkowo to bardzo szybkie rozwiązanie. (Ostatnio pisałem program który generował 128 MB plik, zrobił to w kilka sekund - dla porównania: była to pętla z 256^3 (ponad 16 milionów) powtórzeń - gdyby w takiej pętli umieścić wyświetlenie czegoś w konsoli zajęłoby to kilka(może naście) minut :) ) A jeśli już chodzi o dwa wymiary w dwuwymiarowej tablicy to wyobraź to sobie jak układ dwuwymiarowy współrzędnych |
|
Anim Temat założony przez niniejszego użytkownika |
» 2015-08-21 22:57:08 hm. Dziękuję za sugestie...Tablica statyczna jest w porządku, ale chodzi faktycznie o ten rozmiar danych :) Spróbuję w takim razie pliki tymczasowe. Mam nadzieję, że mi się uda :D |
|
notabigthreat |
» 2015-08-21 23:17:01 @2UP: std::vector < std::vector < int >> bardzo_duzy_pojemnik( 10000, std::vector < int >( 10000 ) ); std::cout << bardzo_duzy_pojemnik.size() << "\n" << bardzo_duzy_pojemnik[ 4824 ].size();
U mnie się mieści. |
|
Cansisti |
» 2015-08-21 23:53:15 Sorry, namieszałem, pomyliłem gigabajty z megabajtami :) niemniej jednak tempy są fajne, chociaż tutaj tablica powinna wystarczyć (lub vector) |
|
« 1 » |