在集合上实现 keep 和 discard 操作。
给定一个集合和作用于集合元素的谓词,keep 返回一个新集合,其中包含谓词为 true 的那些元素;而 discard 返回一个新集合,其中包含谓词为 false 的那些元素。
例如,给定这个数字集合:
以及这个谓词:
那么你的 keep 操作应该得到:
而你的 discard 操作应该得到:
注意,keep 和 discard 的并集就是所有元素。
这两个函数可以命名为 keep 和 discard,也可能需要换个名字,以免与你的编程语言中已有的函数或概念冲突。
别去碰标准库里提供的 filter/reject/管它叫什么 之类的功能!请改用其他基本工具,自己动手解决。