Thema: Delphi Natürliche Sortierung

Einzelnen Beitrag anzeigen

Benutzerbild von JasonDX
JasonDX
(CodeLib-Manager)

Registriert seit: 5. Aug 2004
Ort: München
1.062 Beiträge
 
#2

Re: Natürliche Sortierung

  Alt 19. Jun 2005, 10:59
Eine Möglichkeit wäre dass du jede Zahl in ein Array zerlegst:
aus 12x2 wird bspw. [12, 2]. da dürft copy, pos, delete und TryStrToInt helfen
Anschließend kannst du ja den implementierten Quicksort verwenden, oder einen selber Programmieren. Tutorials gibts hier dafür wie Sand am Meer
Der Vergleich könnte dann ca. so aussehen:
  • Vergleiche das Element i (anfangs = 0)
  • Wenn <>, gib +/-1 (oder was auch immer ) zurück
  • Ansonsten inkrementiere i und beginne wieder von vorne, falls i noch nicht am Ende des arrays angekommen ist
Wenn i am Ende angekommen ist, sind beide Werte gleich groß, also machts dann nichts aus, was du zurückgibst


[Edit]Der Algorithmus würde dann auch mit Elementen wie x12x93x345x53 funktionieren, wobei vorausgesetzt sein muss, dass alle Elemente gleich lang sind. Ansonsten musst du die arrays zuerst auf länge vergleichen.[/Edit]
Mike
Passion is no replacement for reason
  Mit Zitat antworten Zitat