Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
Datentyp für mehrdimensionale Matrix-ähnliche Struktur gesucht
digi333
myCSharp.de - Member



Dabei seit:
Beiträge: 302

Themenstarter:

Datentyp für mehrdimensionale Matrix-ähnliche Struktur gesucht

beantworten | zitieren | melden

Ich möchte eine Matrix berechnen. Das Problem ist die Matrix kann mehr als 2 Dimensionen haben.

Ich habe mehrere Vektoren mit unterschiedlichen Längen... zum Beispiel habe ich mal 4 Vektoren mit 5 Double-Werte. Jetzt möchte ich jeden Wert von jedem Vektor mit jedem anderen Wert der anderen Vektoren abziehen um anschließend sagen zu können welcher der kleinste Wert mit welcher Kombination ist.

Das klingt im ersten momentan nach Listen und For-Schleifen, aber wie baut man es zusammen oder gibt es einen anderen Datentyp der das lösen kann? Es können nämlich auch mal 6 Vektoren sein und Vektoren mit unterschiedlicher Länge.
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von digi333 am .
private Nachricht | Beiträge des Benutzers
MrSparkle
myCSharp.de - Team

Avatar #avatar-2159.gif


Dabei seit:
Beiträge: 5973
Herkunft: Leipzig

beantworten | zitieren | melden

Wenn ich es richtig verstehe, reicht für dich ein Array von Vektoren aus. Evtl. kannst du auch eine Basisklasse für alle Vektoren (mit unterschiedlicher Anzahl von Elementen) erstellen, auf der die Matrix basiert. Wenn du mehr Funktionen benötigst, als aus deinem Beitrag hervorgeht, kannst du mal bei CodeProject oder so schauen, da gibt es jede Menge solcher generischen Matrix-Klassen.
Weeks of programming can save you hours of planning
private Nachricht | Beiträge des Benutzers
gfoidl
myCSharp.de - Team

Avatar #avatar-2894.jpg


Dabei seit:
Beiträge: 7547
Herkunft: Waidring

beantworten | zitieren | melden

Hallo,

Stichwort: jagged array

Über diese(n) iterierst du dann per for-Schleifen.


mfG Gü
Stellt fachliche Fragen bitte im Forum, damit von den Antworten alle profitieren. Daher beantworte ich solche Fragen nicht per PM.

"Alle sagten, das geht nicht! Dann kam einer, der wusste das nicht - und hat's gemacht!"
private Nachricht | Beiträge des Benutzers
ErfinderDesRades
myCSharp.de - Experte

Avatar #avatar-3151.jpg


Dabei seit:
Beiträge: 5409

beantworten | zitieren | melden

Wenn ich dich richtig verstehe, hast du nicht ein Problem, wie eine Matrix definieren, sondern eher, wie über eine Anzahl von Vektoren permutieren.
Ja, gut, die Vektoren sollte man in ein jagged Array, bzw in eine Liste von Listen aufnehmen, zb.


         var vectors = new List<List<int>>();
         vectors.Add((new[] { 2, 4, 7 }).ToList());
         vectors.Add((new[] { 2, 12, 99, 2 }).ToList());
         vectors.Add((new[] { 1, 2 }).ToList());
Aber jetzt den Algo finden, der alle möglichen 3er Gruppen findet...

edit: ...und der mit 4 vektoren immer noch täte...
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von ErfinderDesRades am .
Der frühe Apfel fängt den Wurm.
private Nachricht | Beiträge des Benutzers