内容简介:我正在寻找一个类似于字典的数据结构,它将所有相关项的集合返回给一个键.例如,我会像这样使用它:在这个例子中,alternateNames1将是一个包含“Liz”和“Elizabeth”的数组,alternateNames2将是一个包含“Elizabeth”和“Betty”的数组.
我正在寻找一个类似于字典的数据结构,它将所有相关项的集合返回给一个键.
例如,我会像这样使用它:
var data = new FancyDataStructure();
data.Add(new string[] {"Elizabeth", "Liz", "Betty"});
data.Add(new string[] {"Bob", "Robert", "Rob"});
string[] alternateNames1 = data["Betty"];
string[] alternateNames2 = data["Liz"]
在这个例子中,alternateNames1将是一个包含“Liz”和“Elizabeth”的数组,alternateNames2将是一个包含“Elizabeth”和“Betty”的数组.
我不想重新发明这个,但我找不到任何这种结构的例子.
更新
感谢那些回复了建议的人.许多人建议使用某些版本的Dictionary<string,IEnumerable<string>>.目前我正在使用这种方法,但它实际上并没有满足要求而不会非常难以维护.每个列表中的每个值都需要能够作为集合中添加到其中的每个其他值的键.
因此,给出以下内容:
data.Add(new string[] {"Elizabeth", "Liz"}
data.Add(new string[] {"Liz", "Betty"}
alternates = data["Betty"];
我希望替补人员现在包含“伊丽莎白”和“利兹”.
看起来我可能只需构建这样的结构以满足我的需求.保持想法即将到来!
布赖恩
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Python 3学习笔记(上卷)
雨痕 / 电子工业出版社 / 2018-1 / 89
经过9 年的发展,Python 3 生态已相当成熟。无论是语言进化、解释器性能提升,还是第三方支持,都是如此。随着Python 2.7 EOF 日趋临近,迁移到Python 3 的各种障碍也被逐一剔除。是时候在新环境下学习或工作了。 人们常说Python 简单易学,但这是以封装和隐藏复杂体系为代价的。仅阅读语言规范很难深入,亦无从发挥其应有能力,易学难精才是常态。《Python 3学习笔记(......一起来看看 《Python 3学习笔记(上卷)》 这本书的介绍吧!