53、用 Ruby 编写一个 TreeSet 类的开头部分,包括其属性、不变式、构造函数以及从 Collection 接口继承的操作。
属性方面可包含存储元素的二叉搜索树结构;不变式是元素唯一且有序;构造函数用于初始化树;从 Collection 接口继承的操作可能有 contains 等,可依据接口定义实现。
54、为TreeSet编写subset?()操作,该操作用于判断一个TreeSet是否为另一个TreeSet的子集。
subset?() 操作通常用于判断一个 TreeSet 是否为另一个 TreeSet 的子集。可通过遍历一个 TreeSet 的所有元素,检查它们是否都存在于另一个 TreeSet 中来实现。在 Ruby 中,借助 TreeSet 内部的二叉搜索树结构,可高效地完成元素存在性检查。
55、为TreeMap编写Enumerable.each()操作。此操作应生成每个键值对,将键和值作为两个元素产出,就像Ruby的Hash类的该操作一样。同时,再仿照Ruby的Hash类编写each_key()和each_value()操作。
要实现这些操作,需要先完成 TreeMap 类的基础实现,包含属性、不变式、构造函数以及从 Collection 接口继承的操作。
- 对于
Enumerable.each(),要遍历TreeMap的每个键值对并产出键和值; -
each_key()遍历并产出每个键; -
each_value()遍历并产出每个值。
具体代码实现需依据 TreeMap

最低0.47元/天 解锁文章
1071

被折叠的 条评论
为什么被折叠?



