Supportnet Computer
Planet of Tech

Supportnet / Forum / Skripte(PHP,ASP,Perl...)

array sortieren





Frage

Hallo! Wer kann mir helfen? VBA: Ich möchte einen Arry sortiern (der Größe nach). Es handelt sich um einen sehr großen Array vom Typ Double. Schonmal vielen Dank!

Antwort 1 von Event

Hallo

Wieviele Dimensionen, auf- oder absteigend ?

Gruß

Antwort 2 von Kasa

Eindimensionaler Array, Länge wird vom Benutzer eingegeben, ist also eine Variable im Program. Wird zischen 1000 und 10000 liegen. Danke!

Antwort 3 von K-D

Hi,

am besten ist es, wenn Du die Werte sofort sortierst, wenn Du sie in den Array reintust. Is zwar ziemlich langsam, aber Sortieren is nie besonders schnell.

Du erstellst zu dem vorhandenen array ein zweites array. Nun vergleichst Du den Wert, den Du neu hinzufügen willst, der Reihe nach mit denen des bereits vohandenen arrays. den kleineren der beiden Werte schreibst Du in den Hilfsarray. Dies machst Du so lange, bis Du den neuen Wert in das Hilfsarray schreiben kannst. Ab diesem Punkt nimmst Du alle folgenden Werte des Originalarrays und packst sie in den Hilfsarray.

Nun wird das Originalarray gelöscht und auf die Länge dea Hilfsarrays gebracht nun noch die Werte des Hilfsarrays alle in das Originalarray speichern.

Gruß
K-D

Antwort 4 von Kasa

Hallo!
Vielen Dank für die Antwort! Ist echt ne gute und einfache Idee! Meinst du das diese Methode schneller ist als z.B. QuickSort? Hab da ne Funktion gefunden. Nochmal danke und bis bald.
Gruß
Kasa

Antwort 5 von K-D

Also meine Version is auf jeden Fall langsam. Quicksort ist im Normalfall ziemlich schnell. Wenn Du aber das falsche Element zum vergleichen nimmst, dann wird Quicksort extrem langsam und je nachdem wie der Algotrithmus aussieht, den Du gefunden hast, kann der benötigte Speicherplatz durch die Rekursionen sehr groß werden.

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: