zoukankan      html  css  js  c++  java
  • LeetCode_Binary Tree Level Order Traversal II

    A过了,但是是那种BT解法,明天再想个正解

    /**
     * Definition for binary tree
     * struct TreeNode {
     *     int val;
     *     TreeNode *left;
     *     TreeNode *right;
     *     TreeNode(int x) : val(x), left(NULL), right(NULL) {}
     * };
     */
    class Solution {
    public:
        vector<vector<int> > levelOrderBottom(TreeNode *root) {
            // Start typing your C/C++ solution below
            // DO NOT write int main() function
            vector<vector<int>> result, result1;
            vector<int> tempR;
            queue<TreeNode *> a,b,c;
            if(root == NULL) return result;
            TreeNode *current;
            a.push(root);
            while(!a.empty()){
               
               tempR.clear();
               while(!a.empty())
               {
                    current = a.front();
                    a.pop();
                    tempR.push_back(current->val);
                    if(current->left)
                          b.push(current->left);
                    if(current->right)
                          b.push(current->right);
               }
               result.push_back(tempR);
               c = a;
               a = b;
               b = c;
            }        
            
            for(int i =result.size()-1;i>=0;i--)
                result1.push_back(result[i]);
            return result1;
        }
    };
    --------------------------------------------------------------------天道酬勤!
  • 相关阅读:
    UVa11218 KTV
    counting sort 计数排序
    Uva10474
    Uva110 Meta-Loopless Sorts
    Uva592 Island of Logic
    Qtwebkit flashplayer插件问题
    C++程序员的javascript教程
    Binary Search
    排列组合生成算法
    【Linux】mkdir命令
  • 原文地址:https://www.cnblogs.com/graph/p/3011513.html
Copyright © 2011-2022 走看看