leetcode 199. 二叉樹的右檢視
題目:
199. 二叉樹的右檢視
給定一棵二叉樹,想象自己站在它的右側,按照從頂部到底部的順序,返回從右側所能看到的節點值。
示例:
輸入: [1,2,3,null,5,null,4]
輸出: [1, 3, 4]
解釋:
1 <—
/
2 3 <—
\
5 4 <—
思路:
這道題看起來很玄乎,但是呢。我們發現這題就是說,找一個二叉樹每層層序遍歷的最後一個節點的值,將所有節點每層值的最後一個節點放入陣列中就可以了。
程式碼:
/**
* Definition for a binary tree node.
* struct TreeNode {
* int val;
* TreeNode *left;
* TreeNode *right;
* TreeNode(int x) : val(x), left(NULL), right(NULL) {}
* };
*/
//就是層序遍歷的每層節點的最後一個
class Solution {
private:
vector<int> ret_v;
public:
vector<int> rightSideView(TreeNode* root)
{
queue<TreeNode * > q;
if(root==NULL) return ret_v;
q.push(root);
while(!q.empty())
{
int N=q.size();
vector<int> temp;
for(int i=0;i<N;i++)
{
TreeNode * front=q.front();
temp.push_back(front->val);
q.pop();
if(front->left)
{
q.push(front->left);
}
if(front->right)
{
q.push(front->right);
}
}
int back=temp.back();
ret_v.push_back(back);
}
return ret_v;
}
};
相關文章
- 二叉樹的右檢視 (中等)二叉樹
- LeetCode-199-二叉樹的右檢視LeetCode二叉樹
- LeetCode199.二叉樹的右檢視LeetCode二叉樹
- 【LeetCode-二叉樹】二叉樹前序遍歷LeetCode二叉樹
- leetcode 刷題視訊(5) - 二叉樹與圖LeetCode二叉樹
- 二叉樹的視覺化二叉樹視覺化
- 5分鐘瞭解二叉樹之LeetCode裡的二叉樹二叉樹LeetCode
- LeetCode 對稱二叉樹LeetCode二叉樹
- LeetCode題解(Offer26):判斷二叉樹A是否為二叉樹B的子樹(Python)LeetCode二叉樹Python
- 索引的INTERNAL 研究系列 之通過TREEDUMP檢視二叉樹索引的結構索引二叉樹
- LeetCode 104.二叉樹的最大深度LeetCode二叉樹
- LeetCode入門指南 之 二叉樹LeetCode二叉樹
- LeetCode.617. 合併二叉樹LeetCode二叉樹
- LeetCode654. 最大二叉樹LeetCode二叉樹
- LeetCode617. 合併二叉樹LeetCode二叉樹
- 交換二叉樹中每個結點的左孩子和右孩子二叉樹
- LeetCode刷題記63-109. 有序連結串列轉換二叉搜尋樹【檢視解法】LeetCode
- 滿二叉樹、完全二叉樹、平衡二叉樹、二叉搜尋樹(二叉查詢樹)和最優二叉樹二叉樹
- Leetcode——94.二叉樹的中序遍歷LeetCode二叉樹
- Leetcode——144. 二叉樹的前序遍歷LeetCode二叉樹
- leetcode 111 二叉樹的最小深度LeetCode二叉樹
- [leetCode]95. 不同的二叉搜尋樹 IILeetCode
- LeetCode-096-不同的二叉搜尋樹LeetCode
- leetcode 617.合併二叉樹 JavaLeetCode二叉樹Java
- LeetCode-110-平衡二叉樹LeetCode二叉樹
- 程式碼隨想錄演算法訓練營第十四天|leetcode226. 翻轉二叉樹、leetcode101.對稱二叉樹、leetcode104.二叉樹的最大深度、leetcode111.二叉樹的最小深度演算法LeetCode二叉樹
- [Golang]力扣Leetcode—初級演算法—樹—二叉樹的最大深度Golang力扣LeetCode演算法二叉樹
- 基於二叉樹的高效IP檢索格式MMDB二叉樹
- 二叉樹的應用(1)--二叉樹排序樹基本操作二叉樹排序
- LeetCode題144. 二叉樹的前序遍歷LeetCode二叉樹
- LeetCode第 543 題:二叉樹的直徑(C++)LeetCode二叉樹C++
- LeetCode-095-不同的二叉搜尋樹 IILeetCode
- 「leetcode」111.二叉樹的最小深度LeetCode二叉樹
- LeetCode637.二叉樹的層平均值LeetCode二叉樹
- 二叉樹 & 二叉查詢樹二叉樹
- 二叉樹任意兩個節點間的最大距離(Java,LeetCode 543二叉樹的直徑 遞迴)二叉樹JavaLeetCode遞迴
- 【LeetCode】98. 驗證二叉搜尋樹LeetCode
- LeetCode 95 | 構造出所有二叉搜尋樹LeetCode