S: Algorithmus zum Daten filtern.
Übersicht

x_toBetreff: S: Algorithmus zum Daten filtern. |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ich habe hier momentan ein eindimensionales Array gefüllt mit shorts in aufsteigender folge (sortiert). da manche shorts mehrfach im array erscheinen wollte ich jetzt nur unterschiedliche shorts in einem neuen array speichern.
zusätzlich zählen wieviele unterschiedliche werte im array sind... allerdings weiß ich nicht wie ich anfangen sollte. das unsortierte array habe ich mit nem bubble sort sortiert, habe auch genug pseudocode dafür gefunden, aber jetzt weiß ich erstmal nicht weiter... gibt es da was brauchbares im code archiv oder hat jemand nen lösungsansatz??? danke für die hilfe..... |
||
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wenn die Werte schon sortiert sind, kannst du Werte einfach in ein zweites Array kopieren, wenn der vorhergehende Wert nicht der gleiche war.
Edit: ~VERSCHOBEN~ Ich nehme mal an, BlitzMax war gemeint. |
||
![]() |
DAK |
![]() Antworten mit Zitat ![]() |
---|---|---|
Zwei Möglichkeiten fallen mir spontan ein.
Möglichkeit 1: Zähle, wie viele unterschiedliche Elemente du hast. Dazu läufst du das ganze Array ab, und immer wenn sich der momentane Eintrag vom Letzten unterscheidet, zählst du 1 dazu. Dann erstellst du dir ein neues Array mit der Größe der Anzahl der unterschiedlichen Elemente. Jetzt läufst du das Array noch mal ab, und kopierst alle unterschiedlichen in dein neues Array. Möglichkeit 2: Du erstellst ein neues Array mit der Größe des Alten. Dann läufst du das alte Array ab und kopierst alle unterschiedlichen Einträge nach einander in das neue Array. Dir wird dann am Ende des Arrays etwas leerer Platz bleiben, entsprechend der Anzahl der Duplikate. Dann slicest du das Array runter auf die passende Größe: BlitzMax: [AUSKLAPPEN] neuesArray = neuesArray[..anzahlUnterschiedliche] Da slicen aber sehr langsam ist (soweit ich mich erinnere), könnte eventuell die erste Methode schneller sein. |
||
Gewinner der 6. und der 68. BlitzCodeCompo |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group