0
我是新來的計劃,所以我提前爲基本問題表示歉意。我試圖創建一個遞歸降序列表。目前它返回(1 2 3)
而不是(3 2 1)
計劃降序
我認爲問題是,我將我的新元素放在前面而不是列表的末尾。不過,我不太清楚如何獲取它,因爲我在嘗試時不斷收到錯誤。
這是我到目前爲止有:
所有的(define (descend N mylist)
(if (= N 0) mylist
(descend (- N 1) (cons N mylist))))
(descend 3 '())
感謝Alexis的幫助 - 我同意我喜歡你的第一個解決方案。它乾淨而簡單。但是,我確實需要讓我的功能成爲 - 「元素,列表」,並讓它成爲尾遞歸。這就是我擁有「mylist」的原因。你有什麼建議來滿足這個要求嗎? – user3281388 2015-04-04 19:38:17
@ user3281388你能澄清第二個參數應該做什麼嗎?它總是被認爲是生成列表的尾部嗎? – 2015-04-04 19:39:07
我理解它的方式是,列表將是最終返回的內容。我傳入一個int,然後返回一個降序列表。 – user3281388 2015-04-04 19:46:37