我试图从列表中获取循环语句的给定索引的项目。如何从球拍语言的给定索引的列表中获取项目?
(define decision-tree-learning
(lambda (examples attribs default)
(cond
[(empty? examples) default]
[(same-classification? examples) (caar examples)] ; returns the classification
[else (lambda()
(let ((best (choose-attribute attributes examples))
(tree (make-tree best))
(m (majority-value examples))
(i 0)
(countdown (length best)) ; starts at lengths and will decrease by 1
(let loop()
(let example-sub ; here, totally stuck now
; more stuff
(set! countdown (- countdown 1))
; more stuff
)))))])))
在这种情况下,best
是列表,我需要在countdown
指数来获得它的值。你能帮助我吗?
不是循环遍历索引并使用'list-ref',为什么不直接在列表中循环? –
另请注意,如果您发现自己在通过列表进行随机访问,那么它可能不是适合您数据的容器类型。球拍(以及Scheme)提供支持恒定时间随机访问的* vector *类型。 http://docs.racket-lang.org/guide/vectors.html – dyoo
感谢您的评论。我非常喜欢拍拍朗,我非常欣赏这一切。 – lu1s