摘要:復(fù)雜度思路找的是比這個大的最小值。代碼如果是小于等于的值,就要往右移動比大的值都可能是,所以要保留
LeetCode[285] Inorder Successor in BST
IterationGiven a binary search tree and a node in it, find the in-order successor of that node in the BST.
Note: If the given node has no in-order successor in the tree, return null.
復(fù)雜度
O(lgN), O(lgN)
思路
找的是比這個node大的最小值。
代碼
public TreeNode inorderSuccessor(TreeNode root, TreeNode p) { if(root == null) return null; TreeNode res = null; while(root != null) { // 如果是小于等于的值,就要往右移動 if(root.val <= p.val) { root = root.right; } // 比root大的值都可能是successor,所以要保留 else { res = root; root = root.left; } } return res; }
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/65252.html
Problem Given a binary search tree and a node in it, find the in-order successor of that node in the BST. Note: If the given node has no in-order successor in the tree, return null. Example 1: Input: ...
摘要:解法二迭代中序遍歷分析作者二叉搜索樹的中序后繼是中序遍歷中當(dāng)前節(jié)點之后最小的節(jié)點。 文章目錄 1. 題目1.1 示例1.2 說明1.3 限制 2....
摘要:所以我們要找的上面,實際上是從目標(biāo)節(jié)點向根節(jié)點回溯時,第一個比目標(biāo)節(jié)點大的節(jié)點。 Inorder Successor in BST Given a binary search tree and a node in it, find the in-order successor of that node in the BST. Note: If the given node has n...
摘要:代碼先找到第一個節(jié)點,并把路徑入棧棧為空時不再有下一個棧頂是待返回元素如果該元素有右節(jié)點,把它的右節(jié)點及右節(jié)點的所有左邊節(jié)點都壓入棧中 Binary Search Tree Iterator 最新更新:https://yanjia.me/zh/2019/02/... Implement an iterator over a binary search tree (BST). Your...
摘要:原題網(wǎng)址題意在二叉搜索樹當(dāng)中找到離最近的個數(shù)。解題思路由于二叉搜索數(shù)的中序遍歷是有序的,比如例子中的樹,中序遍歷為。 原題網(wǎng)址:https://leetcode.com/problems... Given a non-empty binary search tree and a target value, find?k?values in the BST that are closes...
閱讀 2247·2021-11-23 09:51
閱讀 1042·2021-11-18 10:02
閱讀 3434·2021-10-13 09:49
閱讀 1262·2021-09-22 14:57
閱讀 10392·2021-08-18 10:20
閱讀 1181·2019-08-30 15:55
閱讀 2226·2019-08-29 16:06
閱讀 3232·2019-08-29 11:14