BST inorder getNext() of current node

来源:互联网 发布:知乎读书 编辑:程序博客网 时间:2024/04/29 03:29



private TreeNodeTest getNext(TreeNodeTest current){if (current == null) {return null;} else if (current.right != null) {TreeNodeTest node = current.right;while (node.left != null) {node = node.left;}return node;} else {TreeNodeTest node = current.parent;while (node != null && node.val < current.val) {node = node.parent;}return node;}}
<p class="p1"><span class="s1">public</span> <span class="s1">class</span> TreeNodeTest {</p><p class="p2"></p><p class="p1">    <span class="s1">int</span> <span class="s2">val</span>;</p><p class="p1">    TreeNodeTest <span class="s2">left</span>;</p><p class="p1">    TreeNodeTest <span class="s2">right</span>;</p><p class="p1">    TreeNodeTest <span class="s2">parent</span>;</p><p class="p1">    TreeNodeTest(<span class="s1">int</span> <span class="s3">x</span>) { <span class="s2">val</span> = <span class="s3">x</span>; }</p><p class="p1">}</p>




0 0
原创粉丝点击