InsertSort
Übersicht

![]() |
EingeproggtBetreff: InsertSort |
![]() Antworten mit Zitat ![]() |
---|---|---|
Also ich hab mich mal an Sortieralgorithmen versucht. Da ich den Insertsort schon in der Schule machen musste, hab ich ihn gleich in Blitz implementieren wollen - und gleich ei haufen Probleme gehabt.
das hartnäckigste meiner Probleme ist einfach die tatsache, dass manchmal die Nummern verdreht werden und ich nicht dahinter komm wieso. Der Code ist kaum kommentiert und gehört zu einem 1000-Zeilen-Programm, welches ich nicht hochladen möchte. Vlt kann mir trotzdem jemand helfen / tips geben Code: Type list_el Field name$ Field num End Type Function sort() el1.list_el=First list_el Repeat el1=After el1 vergl1$="_"+Lower(el1\name) el2.list_el=First list_el While el2<>el1 vergl2$="_"+Lower(el2\name) i=1 : zahl1=0 : zahl2=0 While zahl1=zahl2 And i<Len(vergl1) And i<Len(vergl2) zahl1=Asc(Mid(vergl1,i,1)) zahl2=Asc(Mid(vergl2,i,1)) i=i+1 Wend DebugLog "Vorher-----------"; DebugLog "name: "+el2\name+" <-> "+el1\name; DebugLog "num: "+el2\num+" <-> "+el1\num; DebugLog "vergl: "+vergl2+" <-> "+vergl1; DebugLog "zahl: "+zahl2+" <-> "+zahl1; If zahl1<zahl2 Then el1\num=el2\num ;Alle anderen weiterschieben el.list_el=el2 While el<>el1 el\num=el\num+1 el=After el Wend Exit EndIf el2=After el2 Wend DebugLog "Nachher-----------"; DebugLog "name: "+el2\name+" <-> "+el1\name; DebugLog "num: "+el2\num+" <-> "+el1\num; DebugLog "vergl: "+vergl2+" <-> "+vergl1; DebugLog "zahl: "+zahl2+" <-> "+zahl1; KeyWait() ; If KeyHit(1) Then End ; Until el1=Last list_el DebugLog "----------------------------" DebugLog "----------------------------" DebugLog "Endergebnis" For el=Each list_el DebugLog el\name+" -> "+el\num Next End Function |
||
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9 |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group