剛學到平衡二叉樹 在網上看了很多代碼 旋轉都是傳的指標的參考 類似下面
//左左旋轉
void SingRotateLeft(TreeNode<T>*& k2)
{
TreeNode<T>* k1;
k1 = k2->left;
k2->left = k1->right;
k1->right = k2;
k2->height = Max(height(k2->left), height(k2->right)) + 1;
k1->height = Max(height(k1->left), k2->height) + 1;
k2 = k1; //這一步將傳進來的指標改成他原來的左子樹
}
將k2子樹變成平衡二叉樹 這樣這顆子樹的根節點變成k1 但是k2節點的父節點還是指向k2的啊 k1的父節點是誰呢
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/238136.html
標籤:C++ 語言
上一篇:堆和堆疊的區別
