clojure - 列表中的唯一元素
问题描述
我创建了一个检查列表成员资格的函数:
(defn in-lst? [x lst]
(if (empty? lst)
false
(if (= x (first lst))
true
(in-lst? x (rest lst)))))
我正在尝试使用此 fn 从列表中派生唯一元素,但我对下面的代码没有太多运气。我只想new-x
返回 lst 中的唯一元素。这将进入bag
. 我错过了什么?
(defn new-x [lst bag]
(if (empty? lst)
bag
(if (in-lst? lst bag)
(new-x bag
(new-x (rest lst))))))
解决方案
推荐阅读
- visual-studio-code - 使用 VS 代码命令行界面 (CLI) 打开 Raspberry Pi 网络附加存储 (NAS) 上的文件夹时权限被拒绝
- r - 使用 Rvest 搜索 Google 新闻获取关键字
- python - 对于 REST API,我可以使用 flask-login 提供的身份验证机制,还是必须明确使用基于令牌的身份验证,如 JWT?
- python - NoneType 对象不可调用(制作词法分析器)
- javascript - 有没有办法为我的命令添加全局冷却时间,这样当一个用户使用该命令时,所有用户都必须等待特定时间?
- ios - 测试飞行中的 IOS 应用程序崩溃(delphi10.4)
- c++ - C++ 升压系统::error_code 语言
- php - 无法使用 PHP 重命名文件
- reactjs - 我的笑话单元测试用例因 Material UI 多选而失败
- javascript - 未捕获的类型错误:尝试使用 jqxTabs 更改所选选项卡时无法读取未定义的属性“offsetWidth”