AVL树旋转技术?

时间:2016-03-30 17:11:12

标签: algorithm

任何人都可以解释AVL树中的旋转技术并举例说明,有4种类型可以旋转LL,RR,LR和RL。          我知道LL和RR的旋转,但是我对RL和LR的旋转有一些问题吗?

1 个答案:

答案 0 :(得分:2)

这里真的不应该问这类问题,因为你可以通过简单的谷歌搜索解决这个问题并像我刚才那样探索自己。但是这是为它编写伪代码的一种非常好的方法:

IF tree is right heavy {

  IF tree's right subtree is left heavy {
     Perform Double Left rotation

  } ELSE {
     Perform Single Left rotation
  }

} ELSE IF tree is left heavy {

  IF tree's left subtree is right heavy {
     Perform Double Right rotation
  }

  ELSE {
     Perform Single Right rotation
  }
} 

这是我从中得到这个的链接。本文还有一个更详细的解释,应该清除它:http://www.cise.ufl.edu/~nemo/cop3530/AVL-Tree-Rotations.pdf