GLBasic forum

Other languages => GLBasic - de => Topic started by: Husten on 2008-Sep-04

Title: Arraysortierungen?
Post by: Husten on 2008-Sep-04
hi,

ich bin einfach zu deppert drum frag ich lieber doof.

ich hab ein array, mit verschieden werten also zb

area[0] = 123
area[1] = 456
area[2] = 789

nur würde ich es gerne erstmal nach value sortieren (höchster wert zuerst), dieses area dann in dieser reihenfolge in einer schleife abarbeiten und ich muss auch beim abarbeiten value und den key den es vor der sortierung hatte wissen. also ist es möglich das array nach value abzuarbeiten wobei key und value immer noch wie vorher den bezug haben (also hier im beispiel 0 => 123 auch wenn 0 als beim abarbeiten als letztes drankommt).

ich hoffe das war verständlich ;)

vf
Husten
Title: Re: Arraysortierungen?
Post by: Kitty Hello on 2008-Sep-04
Code (glbasic) Select

TYPE Tpair
   index
   value
ENDTYPE

LOCAL p AS Tpair, a[] AS Tpair
   p.index=0
   p.value=123
   DIMPUSH a[], p
   ...
sort(a[])


So würd' ich's machen.
Title: Re: Arraysortierungen?
Post by: Husten on 2008-Sep-04
thx mit dem ansatz komm ich weiter :)
Title: Re: Arraysortierungen?
Post by: Husten on 2008-Sep-04
naja nach dem testen eigentlich nicht, denn die funktion sort gibts einfach nicht :(
Title: Re: Arraysortierungen?
Post by: Schranz0r on 2008-Sep-04
wer häts gedacht ^^

mach dir nix draus bin da auch mal gescheitert :(
Title: Re: Arraysortierungen?
Post by: Husten on 2008-Sep-04
ich versuch mir jetzt bubblesort zu basteln, da kann ich mich grob aus schulzeiten dran erinnern, das ging noch recht simpel ;)
Title: Re: Arraysortierungen?
Post by: Quentin on 2008-Sep-04
Wenn es sich um größere Datenmengen handelt, kannst dich auch an einem Quicksort probieren. Hatte das hier mal für ein einfaches Array eingestellt:

http://www.glbasic.com/forum/index.php?topic=1310.0

könntest das für deine Zwecke umschreiben.
Title: Re: Arraysortierungen?
Post by: Kitty Hello on 2008-Sep-05
hmmm... Man müsste eine SORT Funktion einbauen. Also. Jedes TYPE müsste einen "operator <" bekommen. Hmmm...
Title: Re: Arraysortierungen?
Post by: Husten on 2008-Sep-05
Quote from: Quentin on 2008-Sep-04
Wenn es sich um größere Datenmengen handelt, kannst dich auch an einem Quicksort probieren. Hatte das hier mal für ein einfaches Array eingestellt:

http://www.glbasic.com/forum/index.php?topic=1310.0

könntest das für deine Zwecke umschreiben.

supercool danke :) an quicksort hätte ich mich jetzt garnicht rangetraut, aber wenn es das eh schon gibt ;)