C++ en lijsten/tabellen

Status
Niet open voor verdere reacties.

XXL66

Gebruiker
Lid geworden
11 dec 2007
Berichten
13
hallo,

ik ben redelijk nieuw in c++ en gebruik nu voor lijsten linked lists

vb:

typedef struct item {
int val;
item * next;
} item;

Ik heb jaren in LISP geprogrammeerd en daar zijn heel veel standaard functies om lists te bewerken.

Nu wil ik lijsten in lijsten gaan maken in c++ (liefst dynamisch)

Ik zie door het bos de bomen niet meer en lees over Vector, HASH etc
Wat kan ik best gebruiken voor kleine tot middelgrote lijsten in lijsten ?

En een klein voorbeeldje zou helemaal geweldig zijn (of link naar site)

thx !
 
het beste voor een synchrone lijst (waarmee ik bedoel dat je gegevens toevoegd na mekaar en er niet teveel wil tussenvoegen) is inderdaad vector. Een vector heeft als voordeel dat deze super snel is, en dynamisch wordt uitgebreid zonder tussenkomst van de gebruiker.

Code:
#include <vector.h>
#include <iostream.h>

vector <int> IntegerLijst;

int main()
{
    int buffer = 0;

    for(int i = 0;i < 20;i++)
    {
         cin >> buffer;
         IntegerLijst.push_back( buffer );
    }

    return 0;
}

dacht dat tweedimensionale worden gemaakt op volgende manier
vector < vector < int > > 2DIntegerVector;

Code:
#include <vector.h>
#include <iostream.h>

vector < vector <int> > IntegerLijst;

int main()
{
    int buffer = 0;

    for(int j = 0;j < 5;j++)
    {
        for(int i = 0;i < 4;i++)
        {
             cin >> buffer;

             IntegerLijst.push_back( vector <int>() );
             IntegerLijst.at( j ).push_back( buffer );
        }
     }

    return 0;
}

zie : http://www.cplusplus.com/reference/stl/vector/
voor meer info hier omtrent
 
Laatst bewerkt:
Bedankt voor uw reactie. Ben ondertussen al aan het experimenteren geweest met VECTOR.

Nu een ander vraagje, is dit ook geschikt voor zeer grote hoeveelheden data ? vb lijsten van 10.000 of meer en om hier veelvuldig bewerkingen mee te doen (inserten, removen (en niet alleen op begin en einde). Ik heb wat zitten zoeken op het net en ik heb al gelezen dat het het bewerken van elementen in de lijst niet echt efficient is ?
 
daarvoor heb je list. Deze kan op gelijk welke plaats iets vlug toevoegen en verwijderen! Ja je kunt er 100000... elementen in opslaan, de sky is the limit..of liever het werkgeheugen ;-)

list werkt gelijkaardig aan vector:-)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan