簡體   English   中英

如何在球拍/方案中將偶數列表更改為奇數列表?

[英]How to change even list to odd list in racket/scheme?

我有以下代碼甚至列表:

(define (even xs)
    (cond
        ((null? xs) '())   
        ((eq? (cdr xs) '()) '()) 
        (else (cons (cadr xs) (even (cddr xs)))))) 
;(even-list   '(a b c d)) produces (b d)

如何對產生(ac)if(奇數列表'(abcd))的奇數列表執行相同的操作。

我相信你會被要求完全自己寫出來。 為此,請注意(在您提供的代碼中)您正在檢查cdr是否為空列表,因為您將cadr作為第一個元素。

對於賠率,你不需要cadr 第一個元素已處於奇數位置。

但是你也可以使用一個簡單的技巧。

問題:( (cons 1 xs)xs的長度有什么影響?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM