62 二叉搜尋樹的第k個結點

2021-09-25 06:16:39 字數 572 閱讀 6709

題目描述

給定一棵二叉搜尋樹,請找出其中的第k小的結點。例如, (5,3,7,2,4,6,8) 中,按結點數值大小順序第三小結點的值為4。

/*

struct treenode

};*/

class solution

};

二叉搜尋樹的中序結果就是順序的,二叉樹的中序結果不一定是順序的,如果是二叉樹的話就要考慮大根堆。

/*

struct treenode

};*/

class solution

void inorder(treenode *root, treenode *&ans)

}private:

int count;

};

利用vector按中序遍歷儲存結點, 取出第k個結點

class solution 

void inorder(treenode *root, vector&vec)

};

劍指62 二叉搜尋樹的第k個結點

給定一棵二叉搜尋樹,請找出其中的第k小的結點。例如,5,3,7,2,4,6,8 中,按結點數值大小順序第三小結點的值為4。如果中序遍歷一棵二叉搜尋樹,則遍歷序列的數值是遞增排序的。因此,只需要在中序遍歷節點的過程中,判斷當前遍歷的節點是否為第k個節點就行了 public class treenode...

二叉搜尋樹第k個結點

題目描述 給定一顆二叉搜尋樹,請找出其中的第k大的結點。例如,5 3 7 2 4 6 8 中,按結點數值大小順序第三個結點的值為4。這個題目考慮到可以用中序遍歷求解,因為中序遍歷是搜尋二叉樹的從大到小的順序,對二叉樹進行中序遍歷,每次經過結點k值減一,一直到k值等於1,對應的結點就是要尋找的點,這個...

二叉搜尋樹的第k個結點

二叉搜尋樹的第k個結點 題目描述 給定一顆二叉搜尋樹,請找出其中的第k大的結點。例如,5 3 7 2 4 6 8 中,按結點數值大小順序第三個結點的值為4。思路 二叉搜尋樹為關鍵字排序 左子樹 根 右子樹 二叉樹的中序遍歷的訪問順序為 左子樹 根 右子樹 故找出二叉搜尋樹中第k大的節點實質為找出中序...