首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >哈希表索引设计

哈希表索引设计
EN

Stack Overflow用户
提问于 2016-11-13 02:01:56
回答 1查看 56关注 0票数 1

我想使用哈希表来存储单词。例如,我有两个单词aba和aab,因为它们是由相同的元素组成的,只是顺序不同,所以我想用相同的索引存储它们,并在该链接列表中插入一个链接表。对我来说,以某种方式进行搜索很容易。单词的元素只有26个字母。如何设计合适的哈希表索引?如何组织表格?

EN

回答 1

Stack Overflow用户

发布于 2016-11-13 02:43:28

所以你想用你的哈希表回答的问题是:用我拥有的字母可以构建什么单词?

我假设你正在读一些字典,并且想把所有的值放在哈希表中。然后,您可以使用int数组来计算每个字母作为键出现的次数(例如,'a‘将是索引0,'z’将是索引25),对于值,您必须使用一个列表,以便您可以向该条目添加多个单词。

但最简单的解决方案可能只是使用排序的单词作为键(例如,'aba‘显然也获得了键'aab’和'aab‘),因为单词不是很长,排序的代价也不高(通过使用字符数组避免总是创建新字符串)。

因此,在Java中,您可以像这样获得密钥:

代码语言:javascript
复制
char[] key = word.toCharArray();
Arrays.sort(key);
// and if you want a string
String myKey = new String(key);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40565997

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档