0
我正在選擇方案來學習遞歸,我發現它對我非常好:D但是現在,我有一個問題。我如何做一個叫做thirds的函數來選擇一個元素並跳過2並重復這個過程。因此,它返回從第一個元素一個新的列表,每個三重元素例如(thirds '(a b c d e f g h))
的應該返回 (a d g)
使用計劃遞歸創建一個新列表
(DEFINE (thirds lst)
(COND
((NOT(list? lst)) (newline) "USAGE: (thirds [list])")
((NULL? lst) lst)
((NULL? (CDR lst)) (CAR lst))
(ELSE (CONS (CAR lst) (thirds (CDR(CDR(CDR lst))))))))
這就是我的代碼都試過,但沒有任何真正的運氣.. 任何幫助嗎?
你錯過了一個基本案例。如果你列出的是兩個元素長什麼? – WorBlux
這個問題已經被回答了幾次__最後幾天,[這裏](http://stackoverflow.com/a/22827083/201359)是我自己的嘗試。我想你們都在走相同的路線... –