[JAVA] Welche Datenstruktur

f.reischl

Admiral Special
Mitglied seit
21.09.2002
Beiträge
1.394
Renomée
2
Hi, ich habe folg. Problem:
Ich brauche eine passende Datenstruktur, in der ich eine zweidimensionale, dynamische Matrix aufbauen kann so nach dem Schema:
Code:
0001-1 0001-2 0001-3 0001-4
0002-1
0003-1 0003-2

usw
 
Wie wäre es mit einem Vector.

Aus der JDK:

The Vector class implements a growable array of objects. Like an array, it contains components that can be accessed using an integer index. However, the size of a Vector can grow or shrink as needed to accommodate adding and removing items after the Vector has been created.

Hab allerdings auch noch nix damit gemacht. Gibt es auch erst seit der Java Version 1.5. Aber sollte ja wie ein mehrdimensionales Array funktionieren, nur eben dynamisch.

/edit: http://java.sun.com/j2se/1.5.0/docs/api/java/util/Vector.html
 
Nimm den vector, ist unter c++ das selbe.

Ich weis jetzt nicht mehr genau wie es bei Java aussieht, aber bei C++ funktioniert das so (nur ein paar grundlegende Sachen, zum Thema Vektoren ließen sich Seiten füllen):

vector<int> v(5);

Vektor v[0..4] vom Typ Integer. Ob das bei Java mit dem Template anders funktioniert, sollte dir google erzählen. Zugreifen tust du mit zB. v[0], könnte bei Java v(0) sein. v.push_back(123) erzeugt ein neues Element (v[5]) mit dem Wert 123, xyz=v.pop_back() löscht das Element [5] wieder und gibt den Wert zurück.

So sieht das in C++ aus (wirklich nur Basisfunktionen), bei Java dürfte es aber wie gesagt ähnlich sein. Eine 2D Matrix wäre in C++ vector<vector<int> > xyz; Beachte, dass nach <int> ein Leerzeichen stehen muss, sonst interpretiert er das als Stream-Operation >> auf xyz.
 
Wobei ich finde, daß es u.U. besser ist mit einem eindim Vektor zu arbeiten und M[j] durch Vektor[i * spalten + j] simuliert.
 
Zurück
Oben Unten