LeetCode 501 二叉搜尋樹中的眾數

2021-10-09 18:49:27 字數 609 閱讀 9716

原題目:

思路:對bst採用中序遍歷,如果當前節點的值不等於前一節點的值,那麼就對其進行判斷,看看前一節點值得次數是否大於了maxn。分情況進行處理。

細節:記得對中序遍歷的第乙個節點做初始化,中序遍歷的最後一種節點在遞迴過程中是不會進行判斷的(因為其後面沒有節點和他進行比較),所以在main函式中,要對這一情況做單獨的判斷。

**:

class solution 

else

else if(count == maxn) ans.push_back(pre);

pre = root->val;

count = 1;

}}

dfs(root->right);

}public:

vectorfindmode(treenode* root) ;

dfs(root);

// 最後一種節點的值(因為其後面沒有節點了,所以在這裡要判斷一下)

if(count > maxn) return;

else if(count == maxn) ans.push_back(pre);

return ans;

}};

leetcode 501 二叉搜尋樹中的眾數

給定乙個有相同值的二叉搜尋樹 bst 找出 bst 中的所有眾數 出現頻率最高的元素 假定 bst 有如下定義 結點左子樹中所含結點的值小於等於當前結點的值 結點右子樹中所含結點的值大於等於當前結點的值 左子樹和右子樹都是二叉搜尋樹 例如 給定 bst 1,null,2,2 返回 2 高階 你可以不...

Leetcode 501 二叉搜尋樹中的眾數

給定乙個有相同值的二叉搜尋樹 bst 找出 bst 中的所有眾數 出現頻率最高的元素 假定 bst 有如下定義 例如 給定 bst 1,null,2,2 1 2 2返回 2 提示 如果眾數超過1個,不需考慮輸出順序 高階 你可以不使用額外的空間嗎?假設由遞迴產生的隱式呼叫棧的開銷不被計算在內 使用額...

LeetCode 501 二叉搜尋樹中的眾數

給定乙個有相同值的二叉搜尋樹 bst 找出 bst 中的所有眾數 出現頻率最高的元素 假定 bst 有如下定義 結點左子樹中所含結點的值小於等於當前結點的值 結點右子樹中所含結點的值大於等於當前結點的值 左子樹和右子樹都是二叉搜尋樹 例如 給定 bst 1,null,2,2 1 2 2返回 2 高階...