Given a binary tree, return the bottom-up level order traversal of its nodes ' values. (ie, from the left-to-right, the level by level from the leaf to root).
This simple problem can be solved: using Leetcode[tree]: Binary Tree level order traversal the same method to get top-down sequence traversal results, the result is flipped. It can also be inserted without plugging from the tail and inserting from the head.
My C + + code is implemented as follows:
vector<vector<int> > Levelorderbottom (TreeNode *root) { vector<vector<int> > result; Vector<int> level; Queue<treenode *> LEVELQ; if (root) levelq.push (root); while (!levelq.empty ()) { level.clear (); int size = Levelq.size (); for (int i = 0; i < size; ++i) { TreeNode *node = Levelq.front (); Levelq.pop (); Level.push_back (node->val); if (node->left) Levelq.push (node->left); if (node->right) Levelq.push (node->right); } Result.insert (Result.begin (), level); } return result;}
Leetcode[tree]: Binary Tree level Order traversal II