zoukankan      html  css  js  c++  java
  • Leetcode-987 Vertical Order Traversal of a Binary Tree(二叉树的垂序遍历)

    水过去了(发出了混子的声音

     1 #define pb push_back
     2 class Solution
     3 {
     4     public:
     5         vector<vector<int> > verticalTraversal(TreeNode* root)
     6         {
     7             
     8             vector<vector<int>> rnt;
     9             if(!root)
    10                 return rnt;
    11             
    12             vector<vector<vector<int>>> v(1000,vector<vector<int>>(1000));
    13             queue<pair<pair<int,int>,TreeNode*>> q;
    14             q.push({{0,501},root});
    15             
    16             while (!q.empty())
    17             {
    18                 auto a = q.front();
    19                 q.pop();
    20                 v[a.first.first][a.first.second].pb(a.second->val);
    21                 if (a.second->left)
    22                     q.push({{a.first.first+1,a.first.second-1}, a.second->left});
    23                 if (a.second->right)
    24                     q.push({{a.first.first+1,a.first.second+1}, a.second->right});
    25             }
    26             
    27             for(int j = 0;j < 1000;j ++)
    28             {
    29                 vector<int> vTmp;
    30                 for(int i = 0;i < 1000;i ++)
    31                 {
    32                     if(!v[i][j].empty())
    33                     {
    34                         sort(v[i][j].begin(),v[i][j].end());
    35                         for(int k = 0;k < v[i][j].size();k ++)
    36                         {
    37                             vTmp.pb(v[i][j][k]);
    38                         }
    39                     }
    40                 }
    41                 if(!vTmp.empty())
    42                 rnt.pb(vTmp);
    43             }
    44             return rnt;
    45         }
    46 };
  • 相关阅读:
    C++ sort()函数的用法
    对C++里面 的知识积累:
    codevs 1160
    hdu 1020 Encoding
    poj 2591 Set Definition
    hdu 1505,1506
    hdu 1284 钱币兑换
    hdu 1231 最大连续子序列 ,1003 Max Sum;
    尺取法
    android OTA package packing and extract to partition
  • 原文地址:https://www.cnblogs.com/Asurudo/p/10350387.html
Copyright © 2011-2022 走看看