社区
Java SE
帖子详情
HashSet,TreeSet有什么用?
dash_running
2007-04-23 11:48:51
HashSet存对象是根据其hashCode值,TreeSet似乎跟平衡二叉树有点象,学数据结构的时候知道 hash表和平衡二叉树都是为了查询,修改,删除等操作时间复杂度低,具体多少忘了,呵呵.
可是HashSet, TreeSet都只能用Iterator来顺序遍历,那如何表现出hash和二叉树的优越处呢? 比如说HashSet好象没有通过hashCode来找到对应元素的方法啊
不知道该怎么理解?
...全文
1280
11
打赏
收藏
HashSet,TreeSet有什么用?
HashSet存对象是根据其hashCode值,TreeSet似乎跟平衡二叉树有点象,学数据结构的时候知道 hash表和平衡二叉树都是为了查询,修改,删除等操作时间复杂度低,具体多少忘了,呵呵. 可是HashSet, TreeSet都只能用Iterator来顺序遍历,那如何表现出hash和二叉树的优越处呢? 比如说HashSet好象没有通过hashCode来找到对应元素的方法啊 不知道该怎么理解?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
hiczw001
2010-01-27
打赏
举报
回复
答非所问
火龙果被占用了
2007-06-13
打赏
举报
回复
to lz(ls):
那当然是不一样的了,作为Set存放在里面的元素是不会重复的,而你用数组存的话,就有可能出现重复的东西,并不是不提供随机访问方法就是Set的。
正如各位楼上所说的,HashSet是通过Hash值来存放的,TreeSet里面存放的是排序后的元素。
dash_running
2007-06-12
打赏
举报
回复
我自己看了下代码,其实HashSet 和TreeSet本身是Set, HashSet用hash表存元素,其实倒不一定快,直接用数组存不是更快吗?我用数组存,不提供随机访问方法不就是Set了吗?
Fantongking
2007-06-07
打赏
举报
回复
Hashset 和 TreeSet 都是用来储存数据的数据结构,Hashset高效但不带排序,TreeSet效率没Hashset高,但可以排序.....
楼主要知道他们要来干什么就得复习下数据结构......
iamsangster
2007-06-07
打赏
举报
回复
hashSet hashCode && equals
TreeSet Comparable || Comparator
brooksychen
2007-06-05
打赏
举报
回复
楼主只要看一看HashSet和TreeSet这两个类的代码,就会明白了。
527xm
2007-06-04
打赏
举报
回复
是的,hashset只是存储效率高。
dash_running
2007-06-02
打赏
举报
回复
楼上,你说的这些我都知道,我是不太明白如果要在HashSet 里查询某个对象,你怎么查?或者我要把某个hashset里的某个对象取出来,我怎么取?不还是要用iterator吗? 如果要用iterator,那要hashset有什么用?只是为存对象的时候快吗???
brooksychen
2007-04-24
打赏
举报
回复
不是都回答你了吗?
dash_running
2007-04-24
打赏
举报
回复
没人知道吗?
brooksychen
2007-04-23
打赏
举报
回复
底层来说,HashSet是用Hash表来存储数据,而TreeSet是用二叉平衡树来存储数据。
功能上来说,由于TreeSet实现了SortedSet接口,所以是一个有序的Set,可以使用SortedSet接口的first()、last()等方法。但由于要排序,势必要影响速度,所以,如果不需要顺序的话,还是使用HashSet吧,使用Hash表存储数据的HashSet在速度上更胜一筹。
HashSet
和
TreeSet
_围墙之外
1. 存储结构:
HashSet
使用哈希表,
TreeSet
使用红黑树。 2. 顺序:
HashSet
无特定顺序,
TreeSet
保持排序。 3. 插入、删除和查找效率:
HashSet
平均O(1),最坏O(n);
TreeSet
平均O(logn)。 4. 允许的元素:两者都不允许...
treemap
treeset
hashset
hashmap 简要介绍
在Java编程语言中,集合框架提供了多种数据结构来存储和操作数据,其中`TreeMap`、`
TreeSet
`、`
HashSet
`以及`HashMap`是最常用的数据结构之一。这些集合类各自有着独特的特性和应用场景,下面将对它们进行详细介绍。...
详解Java中
HashSet
和
TreeSet
的区别
HashSet
和
TreeSet
是 Java 中两个常用的集合类,它们都实现了 Set 接口,但它们之间有很大的区别。本文将详细介绍
HashSet
和
TreeSet
的区别,帮助大家更好地理解和使用这些集合类。
HashSet
HashSet
是一个...
排序之
HashSet
和
TreeSet
的区别
在Java编程语言中,集合框架是处理数据的重要组成部分,其中`...同时,源码阅读也是提升技能的好方法,通过查看`
HashSet
`和`
TreeSet
`的源码,可以更深入地了解它们的工作原理,这有助于优化代码并解决可能出现的问题。
HashSet
和
TreeSet
使用方法的区别解析
HashSet
和
TreeSet
使用方法的区别解析
HashSet
和
TreeSet
都是Java集合框架中的Set接口实现,用于存储不重复的元素。但是,它们在使用方法和实现机理上有很大的区别。 首先,从使用方法上讲,
HashSet
和
TreeSet
都可以...
Java SE
62,634
社区成员
307,269
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章