我已经尝试了很多次,但我仍然陷入这个问题,这是我的输入:
(define *graph*
'((a . 2) (b . 2) (c . 1) (e . 1) (f . 1)))
我希望输出是这样的: ((2 ab) (1 cef))
这是我的代码:
(define group-by-degree
(lambda (out-degree)
(if (null? (car (cdr out-degree)))
'done
(if (equal? (cdr (car out-degree)) (cdr (car (cdr out-degree))))
(list (cdr (car out-degree)) (append (car (car out-degree))))
(group-by-degree (cdr out-degree))))))
你能告诉我我做错了什么吗,因为我的代码输出是(2 a)。然后我认为我的代码的想法是正确的。
请帮忙!!!