Java.数据结构.TreeSet

一、什么是TreeSet?

TreeSet是Java集合框架中的一部分,是基于TreeMap实现的。TreeSet保证了集合中的元素按照自然顺序或者通过提供的Comparator进行排序。

二、TreeSet的特点
  1. 有序性:TreeSet会根据元素的自然顺序进行排序,确保集合中的元素总是处于有序状态,和TreeMap一样,我们同样可以通过重写Comparator方法来进行排序。,

  2. 唯一性:TreeSet中的元素是唯一的,不能重复。如果有两个元素相等,则后插入的元素不会出现在集合中。

  3. 效率:TreeSet基于TreeMap实现,其时间复杂度为O(log n)。

三、TreeSet的基本操作

1.添加元素 :使用add(E e)方法。

java 复制代码
TreeSet<Integer> set = new TreeSet<>();  
set.add(1);  
set.add(2);

2.删除元素 :使用remove(Object o)方法。

java 复制代码
set.remove(1); // 删除元素1

3.判断元素是否存在 :使用contains(Object o)方法。

java 复制代码
boolean contains = set.contains(2); // 返回true

4.遍历元素:使用for-each循环。

java 复制代码
for (Integer num : set) {  
    System.out.println(num);  
}
相关推荐
xiaolang_8616_wjl7 小时前
c++超级细致的基本框架
开发语言·数据结构·c++·算法
LYFlied8 小时前
【每日算法】LeetCode124. 二叉树中的最大路径和
数据结构·算法·leetcode·面试·职场和发展
yyy(十一月限定版)9 小时前
c语言——栈和队列
java·开发语言·数据结构
xu_yule10 小时前
算法基础-背包问题(01背包问题)
数据结构·c++·算法·01背包
蒙奇D索大10 小时前
【数据结构】考研408 | 伪随机探测与双重散列精讲:散列的艺术与均衡之道
数据结构·笔记·学习·考研
budingxiaomoli10 小时前
分治算法-快排
数据结构·算法
dragoooon3410 小时前
[C++——lesson30.数据结构进阶——「红黑树」]
开发语言·数据结构·c++
蓝色汪洋11 小时前
数码串和oj
数据结构·算法
山楂树の12 小时前
有效的括号(栈)
数据结构·算法
im_AMBER12 小时前
Leetcode 81 【滑动窗口(定长)】
数据结构·笔记·学习·算法·leetcode