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);  
}
相关推荐
流年如夢13 小时前
单链表进阶版 -->双向链表
数据结构·链表
流年如夢14 小时前
单链表 -->增、删、查、改等详细操作
c语言·数据结构
handler0117 小时前
【算法模板】最小生成树:稠密图选 Prim,稀疏图选 Kruskal
c语言·数据结构·c++·算法
此生决int18 小时前
快速复习之数据结构篇——栈和队列
数据结构·c++
昵称小白18 小时前
子串专题部分
数据结构·算法·哈希算法
ShoreKiten19 小时前
cpp考前急救
数据结构·c++·算法
诙_19 小时前
C++数据结构--AVL树
数据结构
Cando学算法20 小时前
欧拉回路(一笔画)
数据结构·c++·图论
图码21 小时前
一文搞懂如何判断字符串是否为Pangram(全字母句)
数据结构·算法·网络安全·数字雕刻·ping++
khalil102021 小时前
代码随想录算法训练营Day-43 动态规划10 | 300.最长递增子序列、674. 最长连续递增序列、718. 最长重复子数组
数据结构·c++·算法·leetcode·动态规划·子序列问题