我正在尝试编写一个方案程序,它是 Dijkstra 的最短算法。在我放松边缘的过程中,我得到的错误是
; 病态特殊形式:(let (...) ())
我的程序代码是,
(define relax-over-edge
(lambda (distlist edge min-pair)
( if (null? distlist)
()
(if (equal? (cadr edge) (caar distlist))
(if (> (cdar distlist) (+(cdr min-pair) (cddr edge)))
(let (((cdar distlist) (+ (cdr min-pair) (cddr edge)) )) ())
()
)
(relax-over-edge (cdr distlist) edge min-pair)
)
)
)
)
已经非常感谢了。