1. 程式人生 > 其它 >計算機網路中的node是指_劍指offer演算法題062: 二叉搜尋樹的第k個結點

計算機網路中的node是指_劍指offer演算法題062: 二叉搜尋樹的第k個結點

技術標籤:計算機網路中的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!

長按,掃碼,關注

及時收看更多精彩內容

11cde9b855fa6bdf66992f07c16ae0b0.png

博主:今日頭條大資料工程師專注:求職 面經 原始碼 java 大資料技術分享

點選”閱讀原文“:領取5T精品資料面試總結100+實戰專案

我知道你 “在看64f9cf4dec5d2219ce6086c7953121c1.gif