[C++] Lista tablic

0

Czy mozna ją utworzyć za pomocą

#include <list>
list <Typ> lista;

?
Jesli tak to w jaki sposob, jesli nie - jak inaczej mozna uzyskac zapamietanie 10000 elementow czterocyfrowych, ze swobodnym dostepem do kazdej cyfry?
Wydaje mi sie, ze musze zastosowac tu liste, a nie tablice, poniewaz jednym z wymogow jest mozliwosc usuwania elementu ze zbioru danych, sprawdzanie dla niepustych dla danych wejsciowych rozmiaru 10 000 cyfr byloby wiec nieefektywne

0

Czy mozna ją utworzyć za pomocą
#include <list>
list <Typ> lista;
?

np. tak:
list <char[4]> lista;

0

Hmm racja, to w takim razie jeszcze (pewnie to kolejne oczywiste pytanie, ale jakoś nie chcę znów walczyc z kompilatorem pol godziny)
jak zapisywac dane do tak utworzonej listy?
powiedzmy ze chcialabym umiescic tam kolejne liczby czyli np dla tablicy statycznej, 2wymiarowej wygladaloby to tak
tabl[0,0]=0
tabl[0,1]=3
tabl[0,2]=5
tabl[0,3]=7
mialoby oznaczac ciag 0357
liczby mialyby byc w kolejnosci, czyli zapewne push_back...
tylko w ktorym miejscu? dla normalnej listy byloby to
nazwa.push_back(zmienna);
a tu?
nazwa.push_back0? 😆 legalnie sie poddaje...

0
#include <iostream>
#include <list>

using namespace std;

struct TElement
{
  char tablica[4];
};

int main()
{
  list <TElement> lista;
  for (int i = 0; i < 10000; i++)
  {
    TElement element;
    element.tablica[0] = '0' + i % 10;
    element.tablica[1] = '0' + (i / 10) % 10;
    element.tablica[2] = '0' + (i / 100) % 10;
    element.tablica[3] = '0' + (i / 1000) % 10;
    lista.push_back(element);
  }
  list <TElement>::iterator start = lista.begin(),
                            stop = lista.end();
  while (start != stop)
  {
    for (int j = 3; j >= 0; j--)
     cout << start->tablica[j];
    cout << endl;
    start++;
  }
  cin.get();
  return 0;
}
0

8-0 dziekuje Ci dobry czlowieku :) na to bym chyba sama nie wpadła zbyt szybko... w razie dalszych pytań [równie inteligentnych jak - jak przegladac taka liste na okolicznosc wystapienia elementu] bede pisac :*

1 użytkowników online, w tym zalogowanych: 0, gości: 1