26、Ruby 数据结构与算法:映射与哈希

Ruby 数据结构与算法:映射与哈希

1. 映射接口

映射(Map)接口是集合(Collection)接口的子接口。它包含了 (K, T) 抽象数据类型(ADT)映射的所有操作,但 has_value?() 操作除外,其功能由集合接口中的 contains?() 操作完成。

映射接口的操作如下:
- [](key : K) : T :根据键获取值,前提是 has_key?(key) 为真。
- []=(key : K, value : T) :设置键值对。
- delete(key : K) :删除指定键的键值对。
- has_key?(key : K) : Boolean :判断是否包含指定键。
- has_value?(value : T) : Boolean :判断是否包含指定值。

作为集合的一种,映射有相关的外部迭代器(通过集合的 iterator() 操作返回)和内部迭代器(来自 Enumerator each() 方法)。在 Ruby 中,方便的做法是让外部和内部迭代器遍历映射,并将键值对作为一个包含两个元素的数组返回,第一个元素是键,第二个元素是值。

2. 映射 ADT 的连续实现

和集合一样,使用数组或 ArrayList

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值