Swordは、Offer-55バイナリ検索ツリーのk番目に大きいノードを指します

int res; 
int k; 
public int kthLargest(TreeNode root、int k){ 
    this.k = k; 
    dfs(root); 
    return res; 
} 

public void dfs(TreeNode node){ 
    //右に移動->ルート->左ツリーを介して、k番目のノードを簡単に見つけることができる大きな
    逆数を与える
    IF(node == null){ 
        return; 
    } DFS(node.right); 
    // k == 0は、ツリートラバーサルの
    場合に事前に検出されています。(k == 0){ 
        return; 
    } 
    // K番目に大きいノードを見つけ、resを割り当てます
    if(-k == 0){ 
        res = node.val; 
    } 
    dfs(node.left); 
}

おすすめ

転載: blog.csdn.net/a792396951/article/details/114255257