删除列表中列表中的重复项

发布于 2025-01-17 22:21:42 字数 98 浏览 0 评论 0原文

我将如何删除列表本身的重复元素?例如 [[x,x],[x,y],[y,y,z]] 应返回为 [[x],[x,y],[y ,z]]

How would I go about removing duplicate elements of a list that is itself within a list? For example [[x,x],[x,y],[y,y,z]] should be returned as [[x],[x,y],[y,z]].

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

败给现实 2025-01-24 22:21:42
lists_dedupe(Ls, Ds) :-
    maplist(list_to_set, Ls, Ds).

例如您的示例:

?- lists_dedupe([[x,x],[x,y],[y,y,z]], R).
R = [[x], [x, y], [y, z]]

集合基本上是无重复的列表,因此该地图“转换为set”在输入上以获取输出。

lists_dedupe(Ls, Ds) :-
    maplist(list_to_set, Ls, Ds).

e.g. your example:

?- lists_dedupe([[x,x],[x,y],[y,y,z]], R).
R = [[x], [x, y], [y, z]]

Sets are basically lists without duplicates, so this maps 'convert to set' over the input to get the output.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文