与 returns 匹配项目列表关联的类似过程
Similar procedure to assoc that returns list of matching items
我不知道有任何内置的 Scheme 过程会使用密钥和 return 列表。示例:
(define data-a '((a 1) (b 2) (c 3) (a 4)))
(assoc 'a data-a)
那会 return 类似于:
((a 1)(a 4))
有没有人遇到过类似的情况?谢谢
写一个很简单:
(define (assoc-all key alist)
(filter (lambda (a) (equal? key (car a))) alist))
我不知道有任何内置的 Scheme 过程会使用密钥和 return 列表。示例:
(define data-a '((a 1) (b 2) (c 3) (a 4)))
(assoc 'a data-a)
那会 return 类似于:
((a 1)(a 4))
有没有人遇到过类似的情况?谢谢
写一个很简单:
(define (assoc-all key alist)
(filter (lambda (a) (equal? key (car a))) alist))