2009-03-23から1日間の記事一覧

filter と lambda をつかったクイックソート

リスト内包を使わない場合以下のようなかんじか? #!/usr/bin/env python # -*- coding: utf-8 -*- def qsort(list): if len(list) == 0: return [] pivot = list.pop() return qsort(filter(lambda x: x < pivot, list)) + [pivot] + qsort(filter(lambda x…

リスト内包をつかったクイックソート Python編

#!/usr/bin/env python # -*- coding: utf-8 -*- def qsort(list): if len(list) == 0: return [] pivot = list.pop() return qsort([x for x in list if x < pivot]) + [pivot] + qsort([x for x in list if x >= pivot]) def main(): test_list = [2, 5, 3…

リスト内包をつかったクイックソート Erlang編

-module(qsort). -export([qsort/1]). qsort([]) -> []; qsort([Pivot|T]) -> qsort([X || X <- T, X < Pivot]) ++ [Pivot] ++ qsort([X || X <- T, X >= Pivot]). リスト内包をつかったときに、どういった処理を内部的におこなっているのかがきになる。

コンパイルとリンク

C C++

http://docs.sun.com/app/docs/doc/805-7886/6j7drf0sr?l=ja&a=view