
Binary Tree condition(only):child 不能超過2個

# Complite Binary Tree
Every leve 必須被填滿
除了最後一層 但node 必須靠左

# Perface Binary Tree
All level well be complete filled !!



# Balanced Binary Tree
減少operation cost time
left tree 跟 right tree 的 difference 不能超過 1

Difference 計算 = |Hight(Left sub Tree) - Hight(Right Sub Tree)|

Non-blanced

Node2 -> |1 - (-1)| = 2 (不平衡)
# Store Binary Tree in memory
## Dynamically create nodes (Pointer/Reference)
creat linked node to each other useing the pointer

## Array (used for heap)


### complite tree
```
for node at index i
Left node index = 2i + 1
Right node index = 2i + 2
```