#:g1: seriesでL-99 (P07 リストの平坦化)

Posted 2008-07-15 06:56:00 GMT

-(http://www.ic.unicamp.br/~meidanis/courses/mc336/2006s2/funcional/L-99_Ninety-Nine_Lisp_Problems.html)
この前のエントリでは、ややこしく書いてしまいましたが、マニュアルを読んでいたら、ツリーを走査する専用の関数がありました。

(flatten '(1 2 3 (4 5  (6 (7 (8 (9 (((10(11(((((()))))))))))))))12))
;=> (1 2 3 4 5 6 7 8 9 10 11 12)

(defun flatten (list) (collect (choose (scan-lists-of-lists-fringe list))))


comments powered by Disqus