Servus!
Kann mir jemand erklären nach welchem Algorithmus lisp sortiert.
Wenn ich mir die zwei Beispiele anschaue kann ich zumindest keine Systematik im Abarbeiten der Liste erkennen, vorausgesetzt die ursprüngliche Liste wird in ihrer Reihenfolge nicht verändert.
Muß ich das wissen wenn ich mir eine eigene comparison-function bastle, oder reicht da T und nil als Rückgabewert?
(DEFUN ablauf ()
(vl-sort LISTE
(function (lambda (e1 e2)
(PRINC "\n") (PRINC e1) (PRINC " ") (PRINC e2)
(< e1 e2)
)
)
)
)
Liste ("x" "zz" "AB" "AA" "cH" "FG" "51" "45" "51")
zz x
AA AB
AA x
AB x
FG cH
51 45
45 51
51 51
45 FG
51 FG
51 FG
45 AA
51 AA
51 AA
FG AA
FG AB
FG x
cH x
Ergebnis ("45" "51" "51" "AA" "AB" "FG" "cH" "x" "zz")
Liste ("23" "2" "51" "45" "46" "19" "15" "100" "a1")
2 23
45 51
45 2
45 23
19 46
a1 100
100 15
a1 15
100 19
15 19
a1 19
a1 46
100 2
15 2
19 2
46 2
46 23
46 45
46 51
a1 51
Ergebnis ("100" "15" "19" "2" "23" "45" "46" "51" "a1")
Ciao Georg
------------------
http://www.xxx-tausend.info
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP