Hatena::Groupcadr

わだばLisperになる このページをアンテナに追加 RSSフィード

2004 | 12 |
2005 | 01 | 02 | 07 | 10 | 11 |
2006 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2007 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2008 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2009 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2010 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2011 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 11 |

2008-03-01

ArcでL-99 (P25 ランダムに並び換え)

| 07:41 | ArcでL-99 (P25 ランダムに並び換え) - わだばLisperになる を含むブックマーク はてなブックマーク - ArcでL-99 (P25 ランダムに並び換え) - わだばLisperになる

今回は、リストの内容をランダムに並び換えるというお題です。

ヒントとしては、P23で定義したrnd-selectを使う、とのこと。

前回rnd-selectの出力をちょっと変更して、

(rnd-select '(a b c d e f) 1)
;=> ((e) (f c b d a))

のようにしましたが、中身を一つのリストにしてしまえば今回の目的に適うので、joinでくっつけて終了。

(rnd-permu '(a b c d e f))
;=> '(e f c b d a)

(def rnd-permu (lst)
  (apply join (rnd-select lst 1)))