前回
リスト遊び 5-3 削除* - by shigemk2
例によって、入れ子のリストも扱えるようにする。
(defun memq (x set) (cond ((null set) nil) ((eq x (car set)) t) (t (memq x (cdr set))))) memq (memq 1 '(1 2 3)) t (memq 4 '(1 2 3)) nil (memq 1 '((1) 2 3)) nil (memq 2 '((1) 2 3)) t (defun memq* (x set) (cond ((null set) nil) ((consp (car set)) (or (memq* x (car set)) (memq* x (cdr set)))) ((eq x (car set)) t) (t (memq* x (cdr set))))) memq* (memq* 1 '((1) 2 3)) t (memq* 1 '((1 (2)) 2 3)) t (memq* 2 '((1 (2)) 2 3)) t (memq* 4 '((1 (2)) 2 3)) nil
リスト遊び―Emacsで学ぶLispの世界 (ASCII SOFTWARE SCIENCE Language)
- 作者: 山本和彦
- 出版社/メーカー: アスキー
- 発売日: 2000/05
- メディア: 単行本
- 購入: 2人 クリック: 76回
- この商品を含むブログ (44件) を見る