的名單我在拍一個列表的列表,並有轉他們。矩陣轉置(名單
(: transpose ((list-of(list-of %a)) -> (list-of (list-of %a))))
(check-expect (transpose (list (list 1 2 3)
(list 4 5 6)))
(list (list 1 4)
(list 2 5)
(list 3 6)))
(define transpose
(lambda (xs)
(cond
((empty? xs)empty)
((pair? xs)(make-pair (make-pair (first(first xs)) (make-pair (first(first(rest xs)))empty)) (transpose (rest(rest xs))))))))
這是我此刻的代碼。 我認爲這個問題是在遞歸調用(糾正我,如果我錯了,請)。
的實際結果是(list (list 1 4))
,其餘似乎有點忽略。
這將真正幫助我,如果有人知道的問題,還是有一個提示。
非常感謝=) – b4shyou
Python中的等價物是'apply(zip,[['a','b'],['c','d'],['e','f']]]) '。我知道你並沒有問過關於Python的問題,但我將其作爲常識提供。 Python有大量的lispy bit以「垃圾場 - 戰爭」的風格聚集在一起。與朋友分享也比任何真實的口齒禪更容易。 –