热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

为什么HashSet不能仅在内部使用位数组而不是HashMap来节省一些空间?

如何解决《为什么HashSet不能仅在内部使用位数组而不是HashMap来节省一些空间?》经验,为你挑选了1个好方法。

我看到Java中的HashSet在内部使用HashMap来检查HashSet是否包含元素。它不能仅使用位图来存储字符串的所有哈希结果。例如。字符串abc散列为12索引,我们可以设置该索引以表明它存在。与HashMap相比,它将节省大量空间,因为我们不必在数据中存储实际的键。



1> Sean Patrick..:

如果HashSet仅用于contains()查找,则可能可以进行类似的优化。这仍然很危险,因为哈希冲突总是会发生。我认为您正在寻找的是布隆过滤器(请注意,布隆过滤器没有给出确切的答案,只是排除了误报)。

哈希集是一个集合,一个集合需要有可能检索存储的值。散列不可逆,您无法根据其散列计算原始字符串。


推荐阅读
  • Java:HashSet与HashMap
    如何解决《Java:HashSet与HashMap》经验,为你挑选了2个好方法。 ... [详细]
  • 在Java中有多种遍历HashMap的方法,注意Java中所有的Map类型都实现了共有的Map接口,所以接下来方法适用于所有Map(如:HaspMap,TreeMap,Linked ... [详细]
  • Java面试 HashMap、HashSet源码解析
    本章所有源代码基于JDK1.8版本HashMap和HashSet是JavaCollectionFramework的两个重要成员,其中HashMap是Map接口的常用实现类,Hash ... [详细]
  • 写这篇文章起源于一道面试题,如何将自定义的类对象作为key存储到HashMap中,即考虑怎么判断key的唯一性。首先,我们看以下HashMap中put(…)方法的源码:public ... [详细]
  • 邮件解析引擎FastMail库大功告成!
    1概述邮件解析库API完全使用面向对象技术设计,使用C++语言开发的用于邮件解析和组装的库。它提供了一些类用来解析和组装Internet邮件,如MimeMessa ... [详细]
  • HashMap的介绍以及扩容为什么是2的n次幂
    本篇内容介绍了“HashMap的介绍以及扩容为什么是2的n次幂”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带 ... [详细]
  • 这篇“HashMap实例分析”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅 ... [详细]
  • Struts1学习笔记(6)-----用LookUpDispatchAction类实现方法的动态分配
    在上节中用DispatchAction类实现Action类方法的动态分配时要求方法名必须与From表单的按钮值value取值相同,这样就导致展现给用户的按钮值被紧紧耦 ... [详细]
  • 背景知识哈希冲突哈希是指通过某种方法把数据转变成特定的数值,数值根据mod对应到不同的单元上。比如在Java中,字符串就是通过每个字符的编码来计算、数字是本身对应的值等等,不过就算是再好的哈希方法,也 ... [详细]
  • 集合类中只能存放对象,而不能存放原始数据类型的元素,所以当有原始数据类型需要存放时,只能将其转换成相应的包装类对象。1)访问和遍历数组元素时,ArrayList的 ... [详细]
  • HashMap JDK1.8原理分析
    HashMap、Hashtable、LinkedHashMap和TreeMap下面针对各个实现类的特点做一些说明:(1)HashMap:它根据键的hashCode值存储数据,大多数 ... [详细]
  • 问题描述  给定n个整数,请统计出每个整数出现的次数,按出现次数从多到少的顺序输出。输入格式  输入的第一行包含一个整数n,表示给定数字的个数。  第二行包含n个整数,相邻的整 ... [详细]
  • 在Java8之前,HashMap和其他基于map的类都是通过链地址法解决冲突,它们使用单向链表来存储相同索引值的元素。在最坏的情况下,这种方式会将HashMap的get方法的性能从O ... [详细]
  • 如何解决《javaHashSet中的重复项》经验,为你挑选了1个好方法。 ... [详细]
  • 如何解决《使用int数组的HashSet用法》经验,为你挑选了1个好方法。 ... [详细]
author-avatar
fedfedfv_249
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有