LeetCode-230-二叉搜索樹中第K小的元素

題目描述:給定一個(gè)二叉搜索樹的根節(jié)點(diǎn)
root
,和一個(gè)整數(shù)k
,請(qǐng)你設(shè)計(jì)一個(gè)算法查找其中第k
個(gè)最小元素(從 1 開始計(jì)數(shù))。示例說明請(qǐng)見LeetCode官網(wǎng)。
來(lái)源:力扣(LeetCode) ??
鏈接:https://leetcode-cn.com/problems/kth-smallest-element-in-a-bst/ ??
著作權(quán)歸領(lǐng)扣網(wǎng)絡(luò)所有。商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系官方授權(quán),非商業(yè)轉(zhuǎn)載請(qǐng)注明出處。
解法一:二叉樹的中序遍歷
二叉搜索樹的特性即中序遍歷結(jié)果就是節(jié)點(diǎn)的順序排列,所以通過中序遍歷的方式來(lái)查找第k個(gè)最小元素,處理過程如下:
中序遍歷得到二叉搜索樹的所有節(jié)點(diǎn),是按順序排列的;
判斷如果k大于二叉樹的節(jié)點(diǎn)數(shù),說明不存在第K小的節(jié)點(diǎn),直接返回空;
返回第K小的節(jié)點(diǎn)。
【每日寄語(yǔ)】 我們的希望是今天比昨天好,明天對(duì)于我們來(lái)說太遙遠(yuǎn)了,無(wú)所謂。人活著一生不能做螢火蟲,永遠(yuǎn)要當(dāng)一個(gè)鉆井工人,永遠(yuǎn)在頭上,為了前面的光芒努力,不是看后面怎么樣。希望我們的過去再美好也是由于我們過去的努力,今天再努力就是為了明天的輝煌。
標(biāo)簽: