 
  Data Structure Data Structure
 Networking Networking
 RDBMS RDBMS
 Operating System Operating System
 Java Java
 MS Excel MS Excel
 iOS iOS
 HTML HTML
 CSS CSS
 Android Android
 Python Python
 C Programming C Programming
 C++ C++
 C# C#
 MongoDB MongoDB
 MySQL MySQL
 Javascript Javascript
 PHP PHP
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Difference between Tree Set and Hash Set in Java
In Java, HashSet and TreeSet both belong to the collection framework. HashSet is the implementation of the Set interface, whereas TreeSet implements a sorted set. TreeSet is backed by TreeMap while HashSet is backed by a HashMap.
Difference Table
The following are the key differences between HashSet and TreeSet :
| Sr. No. | Key | Hash Set | Tree Set | 
|---|---|---|---|
| 1 | Implementation | Hash set is implemented using HashTable | The tree set is implemented using a tree structure. | 
| 2 | Null Object | HashSet allows a null object | The tree set does not allow the null object. It throws the null pointer exception. | 
| 3 | Methods | Hash set use equals method to compare two objects | Tree set use compare method for comparing two objects. | 
| 4 | Heterogeneous object | Hash set doesn't now allow a heterogeneous object | Tree set allows a heterogeneous object | 
| 5 | Ordering | HashSet does not maintain any order | TreeSet maintains an object in sorted order | 
TreeSet
Syntax
The Following is the syntax of TreeSet :
TreeSet<String> treeset = new TreeSet<String>();
Example
Below is an example of a TreeSet in Java :
import java.util.TreeSet; public class TreeSetExmaple { public static void main(String[] args){ TreeSet<String> treeset = new TreeSet<String>(); treeset.add("Good"); treeset.add("For"); treeset.add("Health"); //Add Duplicate Element treeset.add("Good"); System.out.println("TreeSet : "); for (String temp : treeset) { System.out.println(temp); } } } Output
TreeSet: For Good Health
Time complexity: O(log n), due to Red-Black Tree operations.
Space complexity: O(n), stores elements in a balanced tree structure.
HashSet
Syntax
The Following is the syntax of HashSet :
HashSet<String> hashSet = new HashSet<String>();
Example
Below is an example of a HashSet in Java :
import java.util.HashSet; public class HashSetExample { public static void main(String[] args){ HashSet<String> hashSet = new HashSet<String>(); hashSet.add("Good"); hashSet.add("For"); hashSet.add("Health"); //Add Duplicate Element hashSet.add("Good"); System.out.println("HashSet: "); for (String temp : hashSet) { System.out.println(temp); } } } Output
HashSet: Health For Good
Time complexity: O(n), due to hash collisions.
Space complexity: O(n), stores elements in a Hash Table.
Advertisements
 