default.txt 249 B

1234567891011
  1. mergesort([],[]). % special case
  2. mergesort([A],[A]).
  3. mergesort([A,B|R],S) :-
  4. split([A,B|R],L1,L2),
  5. mergesort(L1,S1),
  6. mergesort(L2,S2),
  7. merge(S1,S2,S).
  8. split([],[],[]).
  9. split([A],[A],[]).
  10. split([A,B|R],[A|Ra],[B|Rb]) :- split(R,Ra,Rb).