真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

LeetCode如何實現(xiàn)二叉搜索樹的范圍和

小編給大家分享一下LeetCode如何實現(xiàn)二叉搜索樹的范圍和,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

我們提供的服務(wù)有:成都網(wǎng)站制作、做網(wǎng)站、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、高臺ssl等。為超過千家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的高臺網(wǎng)站制作公司


 

題目描述

給定二叉搜索樹的根結(jié)點 root,返回 LR(含)之間的所有結(jié)點的值的和。

二叉搜索樹保證具有唯一的值。

示例 1:

輸入:root = [10,5,15,3,7,null,18], L = 7, R = 15輸出:32
 

示例 2:

輸入:root = [10,5,15,3,7,13,18,1,null,6], L = 6, R = 10輸出:23
 

提示:

樹中的結(jié)點數(shù)量最多為 10000 個。 最終的答案保證小于 2^31。


 
 
 
 
-------------------機(jī)智的思考線-------------------  
 
 
 
 
-------------------機(jī)智的思考線--------------------  
 
 
 
 
-------------------機(jī)智的思考線-------------------  
 
 
 
 
   

解題方案

 

思路

  • 標(biāo)簽:深度優(yōu)先遍歷

  • 題意:這個題字面含義很難理解,本意就是求出所有 X >= LX <= R 的值的和

  • 遞歸終止條件:

    • 當(dāng)前節(jié)點為null時返回0

    • 當(dāng)前節(jié)點 X < L 時則返回右子樹之和

    • 當(dāng)前節(jié)點 X > R 時則返回左子樹之和

    • 當(dāng)前節(jié)點 X >= LX <= R 時則返回:當(dāng)前節(jié)點值 + 左子樹之和 + 右子樹之和

  • 注意點:通過判斷X的大小能夠避免遍歷全部樹的節(jié)點,比如下方的動圖中,3這個值就沒有必要遍歷

LeetCode如何實現(xiàn)二叉搜索樹的范圍和

示例1動圖

 
 

代碼

/** * Definition for a binary tree node. * public class TreeNode { *     int val; *     TreeNode left; *     TreeNode right; *     TreeNode(int x) { val = x; } * } */class Solution {    public int rangeSumBST(TreeNode root, int L, int R) {        if (root == null) {            return 0;        }        if (root.val < L) {            return rangeSumBST(root.right, L, R);        }        if (root.val > R) {            return rangeSumBST(root.left, L, R);        }        return root.val + rangeSumBST(root.left, L, R) + rangeSumBST(root.right, L, R);    }}

看完了這篇文章,相信你對“LeetCode如何實現(xiàn)二叉搜索樹的范圍和”有了一定的了解,如果想了解更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!


本文題目:LeetCode如何實現(xiàn)二叉搜索樹的范圍和
新聞來源:http://weahome.cn/article/jescoe.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部