Lesson 39
TreeMap and TreeSet
TreeMap and TreeSet auto-sort data using Red-Black Tree.
Java Track
Save progress as you learn.
61 lessons
Lesson content
TreeMap and TreeSet auto-sort. Based on Red-Black Tree.
Key Terms
- TreeMap: Sorted key-value pairs.
- TreeSet: Sorted unique elements.
- Natural Ordering: Default sort, ascending.
- Red-Black Tree: Internal self-balancing structure.
Example: TreeMap
import java.util.TreeMap;
public class TreeMapExample {
public static void main(String[] args) {
TreeMap<Integer, String> students = new TreeMap<>();
students.put(103, "David");
students.put(101, "John");
students.put(102, "Alice");
System.out.println(students);
}
}{101=John, 102=Alice, 103=David}TreeMap Methods
map.put(101, "John"); // add
map.get(101); // retrieve
map.remove(101); // delete
map.firstKey(); // smallest key
map.lastKey(); // largest key
map.containsKey(101); // check keyExample: TreeSet
import java.util.TreeSet;
public class TreeSetExample {
public static void main(String[] args) {
TreeSet<String> fruits = new TreeSet<>();
fruits.add("Mango");
fruits.add("Apple");
fruits.add("Banana");
fruits.add("Apple");
System.out.println(fruits);
}
}[Apple, Banana, Mango]TreeSet Methods
set.add("Java"); // add
set.remove("Java"); // remove
set.contains("Java"); // check
set.first(); // smallest
set.last(); // largest
set.size(); // countIterating TreeMap
for (var entry : students.entrySet()) {
System.out.println(entry.getKey() + " : " + entry.getValue());
}FAQ
1. TreeMap vs TreeSet?
TreeMap: sorted key-value. TreeSet: sorted unique values.
2. TreeSet allow duplicates?
No. Auto-removed.
3. TreeMap vs HashMap?
TreeMap sorted. HashMap faster, no order.
TreeMap auto-sorts by keys.
TreeSet auto-sorts unique values.
Both use Red-Black Tree internally.
TreeMap: no null keys.
TreeSet: no null values.
Slower than HashMap/HashSet.
Use when sorted order required.
Where Java is used
Java in real-world development
TreeMap
Sorted key-value pairs. No null keys. firstKey() and lastKey() available.
TreeSet
Sorted unique elements. No duplicates. No null values.
TreeMap vs HashMap
TreeMap sorted. HashMap faster. No null key in TreeMap.
TreeSet vs HashSet
TreeSet sorted. HashSet faster. Both no duplicates.
Use TreeMap When
Keys must stay sorted. Range queries needed.
Use TreeSet When
Unique sorted values needed. No duplicates.