【发布时间】:2021-05-14 20:52:44
【问题描述】:
我正在处理一个项目,但我遇到了一个谓词问题,该谓词需要获取列表列表中所有列表的最短列表。假设我们有以下列表:
Listoflists = [[u,f,c,x,e], [a,v,c], [r,j,[m], [a,l,c,p]]
所以我想要的是一个谓词shortest/2,当被问到shortest(Listoflists, A) 时,它会以A = [m] 回答。问题是我不能使用 maplist/3 因为项目的限制,这就是为什么我问自己而不是使用别人的问题。
我已经看到 keysort/2 在这些情况下很有用,但为了使其工作,我需要一个带有对 (list, listlength) 的列表(或类似的东西,我'不确定),我不知道如何得到它。如果有任何帮助,我正在 Ciao Prolog 工作,感谢您的回答。
【问题讨论】:
标签: prolog