기타/What I Learned
[TIL] 자료구조 - Rebalance 메소드
가죽방패
2022. 7. 26. 09:32
※ Rebalance 메소드
- Rebalance 메소드는 어느 쪽에서 균형이 깨졌는지 확인 후 회전을 하여 균형을 유지한다
public void rebalance(Node<E> node){
if(height(node.left) - height(node.right)>1){
if(height(node.left.left) > height(node.left.right))
node = rightRotate(node);
else
node = leftRighttoRotate(node);
}
else{
if(height(node.left.left)>height(node.left.right))
node = rightLeftRotate(node);
else
node = leftRotate(node);
}
if(node.parent == null)
root = node;
}
// 출처: 자바로 구현하고 배우는 자료구조[부스트코스]