2016-04-04 6 views
0

Angenommen, ich möchte eine Matrix von Beziehungen zwischen n Elementen speichern. Zum Beispiel:DataStructure zum Speichern von Paaren

| A B C 
==|====== 
A | - 2 3 
B | - - 7 
C | - - - 

Sortieren wie eine Kovarianzmatrix Gegeben sind n Elemente. Aber ich brauche es dynamisch zu sein. Das heißt, ich kann die Dimension erhöhen, indem ich einen neuen Gegenstand und einen ganz neuen Satz von Beziehungen hinzufüge.

Was ist die beste Datenstruktur, um damit umzugehen?

Antwort

0

Betrachten Sie die Matrix als Vektor von Vektoren darzustellen. Hinzufügen eines neuen Elements ist dann linear in der Anzahl der Elemente: fügen Sie einen neuen Vektor am unteren Rand des "outter Vektor, füllen Sie es ein und fügen Sie ein Element zu jedem der bestehenden" inneren "Vektoren.

Dies kann nicht die beste Datenstruktur in Bezug auf die Zeit Komplexität, aber es ist sehr praktisch (einfach zu implementieren und einfach zu bedienen).