このディレクトリの索引
#  
#  バブルソート
#  

バブルソート([],[]).
バブルソート([A],[A]).
バブルソート([A,B|R1],L2) :-
        A @=< B,
        バブルソート([B|R1],[C|R2]),
        バブルソート_2(A,B,C,R2,L2),!.
バブルソート([A,B|R1],L2) :-
        A @> B,
        バブルソート([A|R1],L3),
        バブルソート([B|L3],L2),!.

バブルソート_2(A,B,C,R2,[A,C|R2]) :-
        B @=< C.
バブルソート_2(A,B,C,R2,L2) :-
        B @> C,
        バブルソート([C,B|R2],L2).