Kurallar, cdr, araba hakkında sahip olduğum en temel kavramı kullanarak bir listeyi tersine çevirmeyi denedim. Burada, l-orig
tersine çevrilecek liste ve sayaç olarak l-count
davranır.Scheme lisp eksileri ve listesi
(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)))
Ve çıkış, ben lisp içinde bir acemi ve ben burada basit bir ihtiyaç Dürüst konuşan (((2 3 4 5) . 1))
geçerli:
Kodum buraya. Bu yöntemi kullanmayı düşünürsem, bana doğru bir yöntem önerebilir mi?
ilgili ?: https://stackoverflow.com/questions/19529829/how-to-recursively-reverse-: boş bir akümülatör her zaman geçirmek gerekmez böylece bir yardımcı işlev kullanabilirsiniz a-list-using-basic-operations/19536834 # 19536834 –