Step 1: Insert 4 as root in BST; add (4) in Hash Map at index 4
BST: 4
Hash Map: [null, null, null, null, 4, null, null, null, null, null]
Why: Start BST with root; Hash Map stores key at hashed index
Step 2: Insert 2 in BST left of 4; add (2) in Hash Map at index 2
BST:
4
/
2
Hash Map: [null, null, 2, null, 4, null, null, null, null, null]
Why: 2 is less than 4, goes left in BST; Hash Map stores at hash index
Step 3: Insert 6 in BST right of 4; add (6) in Hash Map at index 6
BST:
4
/ \
2 6
Hash Map: [null, null, 2, null, 4, null, 6, null, null, null]
Why: 6 is greater than 4, goes right in BST; Hash Map stores at hash index
Step 4: Insert 1 in BST left of 2; add (1) in Hash Map at index 1
BST:
4
/ \
2 6
/
1
Hash Map: [null, 1, 2, null, 4, null, 6, null, null, null]Why: 1 less than 2, goes left; Hash Map stores at hash index
Step 5: Insert 3 in BST right of 2; add (3) in Hash Map at index 3
BST:
4
/ \
2 6
/ \
1 3
Hash Map: [null, 1, 2, 3, 4, null, 6, null, null, null]Why: 3 greater than 2, goes right; Hash Map stores at hash index
Step 6: Insert 5 in BST left of 6; add (5) in Hash Map at index 5
BST:
4
/ \
2 6
/ \ /
1 3 5
Hash Map: [null, 1, 2, 3, 4, 5, 6, null, null, null]Why: 5 less than 6, goes left; Hash Map stores at hash index
Step 7: Insert 7 in BST right of 6; add (7) in Hash Map at index 7
BST:
4
/ \
2 6
/ \ / \
1 3 5 7
Hash Map: [null, 1, 2, 3, 4, 5, 6, 7, null, null]Why: 7 greater than 6, goes right; Hash Map stores at hash index
Result: BST in-order traversal: 1 -> 2 -> 3 -> 4 -> 5 -> 6 -> 7 -> null
Hash Map keys stored unordered but accessible instantly by key