算法导论13.24

【转】

首先证明任意的二分查找树可通过至多n-1次旋转变成右行链:

      从根开始,反复对根节点执行right-rotate直到根的左子树中的节点都处于根的右行链中;

沿着右行链遍历,找到原来树中根节点的右儿子,遍历过程中对每个节点执行right-rotate操作直到该节点没有左子树;

对原来根的右孩子执行同样的操作,反复进行right-rotate操作;

所有可能的right-rotaten-1

由对称性可知右行链可通过至多n-1次旋转变成任意的二分查找树

  任意两棵二分查找树之间的转换至多需要2(n-1)次旋转。

 

原文地址:https://www.cnblogs.com/longdouhzt/p/2110029.html