小编b4s*_*you的帖子

在球拍中转置矩阵(列表列表

我有一个球拍列表清单,必须转置它们.

(: 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))))))))
Run Code Online (Sandbox Code Playgroud)

那是我目前的代码.我认为问题在于递归调用(如果我错了请纠正我).

实际结果是(list (list 1 4)).其余的似乎有点被忽视了.

如果有人知道这个问题,或者有小费,这对我有帮助.

scheme transpose list matrix racket

5
推荐指数
1
解决办法
5804
查看次数

标签 统计

list ×1

matrix ×1

racket ×1

scheme ×1

transpose ×1