一个函数,它接受一个列表并在球拍编程中添加它们的位置
A funtion which takes a list and add their position in racket programming
我想编写一个函数,它将元素列表作为输入,returns 是一个包含元素及其位置的列表。例如,如果函数的输入是 (list x y z )
,那么它将 return (list x 1 y 2 z 3)
。我编写了可以反转前两项的代码,但我无法处理这一项,有人可以帮忙吗?
以下是使用递归辅助函数的实现。我认为代码是不言自明的。
(define (index-list-rec lst start)
(if (empty? lst) empty
(cons (first lst) (cons start (index-list-rec (rest lst) (add1 start))))))
(define (index-list lst) (index-list-rec lst 1))
我想编写一个函数,它将元素列表作为输入,returns 是一个包含元素及其位置的列表。例如,如果函数的输入是 (list x y z )
,那么它将 return (list x 1 y 2 z 3)
。我编写了可以反转前两项的代码,但我无法处理这一项,有人可以帮忙吗?
以下是使用递归辅助函数的实现。我认为代码是不言自明的。
(define (index-list-rec lst start)
(if (empty? lst) empty
(cons (first lst) (cons start (index-list-rec (rest lst) (add1 start))))))
(define (index-list lst) (index-list-rec lst 1))