【发布时间】:2020-03-12 19:03:47
【问题描述】:
我是球拍新手,最近开始学习抽象列表功能。
我必须编写一个函数(same-country airports code),它使用机场列表airports 和一个代表机场的三字母代码。该函数生成与给定机场具有相同国家/地区的所有机场代码的列表,按字母升序排序。
如果代码不在关联列表中,则该函数将产生空。
例如:
(define alist (list (list "YYZ" (list "Toronto" "Canada"))
(list "YWG" (list "Winnipeg" "Canada"))
(list "BGO" (list "Bergen" "Norway"))
(list "TRF" (list "Sandefjord" "Norway"))
(list "YUL" (list "Montreal" "Canada"))
(list "LHR" (list "London" "England"))
(list "YVR" (list "Vancouver" "Canada"))))
然后
(same-country alist "YUL") => (list "YUL" "YVR" "YWG" "YYZ")
有人可以告诉我如何解决这个问题/给我一个模板吗?我不允许在这个问题中使用任何命名的辅助函数,只有lambda...我知道如何在使用显式递归时做到这一点,但我对抽象列表函数的理解不够好
【问题讨论】:
标签: racket