LeetCode 1008. 先序遍历构造二叉树(已知先序,求二叉搜索树)
生活随笔
收集整理的這篇文章主要介紹了
LeetCode 1008. 先序遍历构造二叉树(已知先序,求二叉搜索树)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 1. 題目
- 2. 解題
1. 題目
返回與給定先序遍歷 preorder 相匹配的二叉搜索樹(binary search tree)的根結點。
示例:輸入:[8,5,1,7,10,12],已知二叉搜索樹的先序(根左右) 輸出:[8,5,10,1,7,null,12],建立二叉搜索樹,返回其root2. 解題
- 辦法1:排序后就是搜索樹的中序,那已知先序和中序,可唯一確定樹
- 辦法2:利用二叉搜索樹的性質,左子樹所有的值都小于root,右子樹都大于root
- 在先序里第一個是根節點的值,然后后面跟著的比它小的是左子樹,有大的出現了,就是右子樹部分的
- 遞歸進行上面步驟
總結
以上是生活随笔為你收集整理的LeetCode 1008. 先序遍历构造二叉树(已知先序,求二叉搜索树)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 算法--排序--大小写字母数字分离(桶排
- 下一篇: c++ sendmessage 鼠标 坐