LeetCode 1382. 将二叉搜索树变平衡(中序遍历+二分递归)
生活随笔
收集整理的這篇文章主要介紹了
LeetCode 1382. 将二叉搜索树变平衡(中序遍历+二分递归)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1. 題目
給你一棵二叉搜索樹,請你返回一棵 平衡后 的二叉搜索樹,新生成的樹應該與原來的樹有著相同的節點值。
如果一棵二叉搜索樹中,每個節點的兩棵子樹高度差不超過 1 ,我們就稱這棵二叉搜索樹是 平衡的 。
如果有多種構造方法,請你返回任意一種。
示例 輸入:root = [1,null,2,null,3,null,4,null,null] 輸出:[2,1,3,null,null,null,4] 解釋:這不是唯一的正確答案,[3,1,4,null,2,null,null] 也是一個可行的構造方案。提示: 樹節點的數目在 1 到 10^4 之間。 樹節點的值互不相同,且在 1 到 10^5 之間。來源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/balance-a-binary-search-tree
著作權歸領扣網絡所有。商業轉載請聯系官方授權,非商業轉載請注明出處。
2. 解題
- 先中序遍歷,是有序的,存入vector
- 對 vector 二分遞歸,建立平衡二叉搜索樹
總結
以上是生活随笔為你收集整理的LeetCode 1382. 将二叉搜索树变平衡(中序遍历+二分递归)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: LeetCode 318. 最大单词长度
- 下一篇: 程序员面试金典 - 面试题 16.19.