Ассоциация в Common Lisp - PullRequest
       15

Ассоциация в Common Lisp

6 голосов
/ 05 декабря 2009

Существует структура следующего формата:

 (setq dist '(((1 1) 1)
              ((0 2) 3)
              ((1 2) 1)
              ((2 3) 3)
              ((3 5) 4)))

Есть ли какая-нибудь функция, которая, если я вызову

(myf '(0 2))

может дать мне

3

или

((0 2) 3)

что-то вроде реверса assoc

1 Ответ

8 голосов
/ 05 декабря 2009

Я не понимаю, почему это можно назвать обратным ASSOC.

(assoc '(0 2) dist :test #'equal)
> ((0 2) 3)

Похоже, что ASSOC работает нормально, если вы измените функцию test , чтобы списки, используемые в качестве ключей, были правильно протестированы.

...