美文网首页
浅析HashSet和TreeSet的区别及底层实现

浅析HashSet和TreeSet的区别及底层实现

作者: 柒浅丶Belief | 来源:发表于2019-05-09 18:55 被阅读0次

    HashSet:存储无序,无索引,元素不可重复,可存储null,底层实现为创建一个HashMap,取HashMap的键作为数据存储

    需要重写hashcode和equals方法来保证值的唯一性,添加,删除和 HashSet 包括的方法的持续 时间复杂度是 O(1) 。

    TreeSet:存储为自然排序,无索引,元素不可重复,不可存储null,底层是创建一个继承自SortedMap的NacigableMap,引用指向TreeMap;

    TreeSet的底层实现

    依赖Comparable和Comparetor方法实现规则进行自然排序,添加,删除和 TreeSet 包含的方法的持续时间复杂度 是 O(logn) 。

    相关文章

      网友评论

          本文标题:浅析HashSet和TreeSet的区别及底层实现

          本文链接:https://www.haomeiwen.com/subject/rbygoqtx.html