wie erzeugt man eine verschachtelte Struktur
4 views (last 30 days)
Show older comments
Hallo,
ich habe folgende Strukturen, z.B.
p1=struct('x',1,'y',1,'nn',{{}})
p2=struct('x',4,'y',2,'nn',{{}})
p3=struct('x',3,'y',6,'nn',{{}})
und möchte im Feld 'nn' die k nächsten Nachbarn eines Punkts speichern. Mit welcher Datenstruktur bzw. verschachtelten Struktur kann man in Matlab diese Aufgabe am besten lösen. In Java oder C++ würde ich die Klasse Punkt definieren.
Vielen Dank!
Lisa
0 Comments
Accepted Answer
Harald
on 16 May 2024
Hallo,
statt durchnumerierter Variablen würde ich eher ein Struct Array verwenden:
p(1)=struct('x',1,'y',1,'nn',{{}})
p(2)=struct('x',4,'y',2,'nn',{{}})
p(3)=struct('x',3,'y',6,'nn',{{}})
So oder so kann einem Feld einer Struktur wiederum eine Struktur zugewiesen werden, und so entsteht dann die gewünschte Verschachtelung.
p(1).nn = p(2)
bzw. bei deinem ursprünglichen Beispiel:
p1.nn = p2
Wenn dir Antworten weiterhelfen, bitte generell die Antworten "akzeptieren".
Viele Grüße,
Harald
2 Comments
Harald
on 21 May 2024
Hallo Lisa,
ich denke auch, dass die Handle-Klasse da empfehlenswert ist, siehe auch
Mein Stand zur Historie: es gab schon länger die Möglichkeit Klassen zu definieren, ca. in 2012 wurde das aber grundlegend überarbeitet und in den Folgejahren allmählich erweitert.
Viele Grüße,
Harald
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!