language: Prolog (swi) (swipl 5.6.64)
date: 107 days 9 hours ago
link:
visibility: public
1
2
3
4
5
6
7
8
9
10
11
12
13
quicksort([], []).
quicksort([Kopf|Rest], SortierteListe):-
        teilen(Kopf, Rest, Kleiner, Groesser),
        quicksort(Kleiner, Kleiner_Sortiert),
        quicksort(Groesser, Groesser_Sortiert),
        append(Kleiner_Sortiert, [Kopf|Groesser_Sortiert], SortierteListe).
 
      teilen(_, [], [], []).
      teilen(Element, [Kopf|Rest], [Kopf|Kleiner], Groesser):-
                             Kopf < Element, !,
                             teilen(Element, Rest, Kleiner, Groesser).
      teilen(Element, [Kopf|Rest], Kleiner, [Kopf|Groesser]):-
                             teilen(Element, Rest, Kleiner, Groesser).