計算機網路中的node是指_劍指offer演算法題062: 二叉搜尋樹的第k個結點
阿新 • • 發佈:2021-01-02
技術標籤:計算機網路中的node是指
小編在求職找找工作期間劍指offer上的演算法題刷了很多遍,並且 每道題小編當時都總結了一種最適合面試時手撕演算法的最優解法 。 考慮到 劍指offer演算法題在面試中的高頻出現 ,小編 每天和大家分享一道劍指offer上的演算法題,以及小編總結的答案。下面是 第062是 道劍指offer演算法題 :題目描述
給定一棵二叉搜尋樹,請找出其中的第k小的結點。例如, (5,3,7,2,4,6,8) 中,按結點數值大小順序第三小結點的值為4。分析:
本質是二叉樹的中序遍歷/*public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { this.val = val; } }*/import java.util.*;public class Solution { TreeNode KthNode(TreeNode pRoot, int k){ Stackstack = new Stack<>(); TreeNode node = pRoot; int count = 0; while(node!=null || !stack.isEmpty()){ while(node!=null){ stack.push(node); node = node.left; } TreeNode tmp = stack.pop(); count++; if(count==k) return tmp; node = tmp.right; } return null; }}
猜你還想看
用資料說話:最受歡迎的女友職業排行榜Top10!
長按,掃碼,關注
及時收看更多精彩內容
博主:今日頭條大資料工程師專注:求職 面經 原始碼 java 大資料技術分享
點選”閱讀原文“:領取5T精品資料,面試總結、100+實戰專案
我知道你 “在看”