私はcons、cdr、carに関するもっとも基本的なコンセプトを使ってschemeのリストを逆転しようとしました。 ここでは、l-orig
が反転されるリストであり、l-count
がカウンタとして機能します。Scheme lisp consとリスト
私のコードはここに行く:
(define (rev l-orig l-count)
(
if (null? l-count)
(cons l-orig '())
(rev (cons (cdr l-orig) (car l-orig)) (cdr l-count))
)
)
(display (rev '(1 2 3 4 5) '(1 1 1 1 1)))
、出力が正直なところ(((2 3 4 5) . 1))
ですが、私はLispでの初心者です、私はここに簡単な助けを必要としています。 この方法を使用する予定の人は誰でも私に正しい方法を提案できますか?
関連?:https://stackoverflow.com/questions/19529829/how-to-recursively-reverse-:あなたは空のアキュムレータ内のすべての時間を渡す必要はありませんので、あなたはヘルパー関数を使用することができますリスト使用のみの基本操作/ 19536834#19536834 –