首页 > 其他 > 详细

Binary Tree Level Order Traversal

时间:2015-04-11 11:44:23      阅读:242      评论:0      收藏:0      [点我收藏+]

从根节点开始按层次遍历一棵二叉树

思路:广搜即可

  1. class Solution {
  2. public:
  3. vector<vector<int> > levelOrder(TreeNode *root) {
  4. vector<vector<int> > resVec;
  5. if (!root)
  6. return resVec;
  7. queue<TreeNode*> nodeQue;
  8. nodeQue.push(root);
  9. while (!nodeQue.empty())
  10. {
  11. vector<int> subVec;
  12. int qSize = nodeQue.size();
  13. for (size_t i = 0; i < qSize; i++)
  14. {
  15. if (nodeQue.front()->left)
  16. nodeQue.push(nodeQue.front()->left);
  17. if (nodeQue.front()->right)
  18. nodeQue.push(nodeQue.front()->right);
  19. subVec.push_back(nodeQue.front()->val);
  20. nodeQue.pop();
  21. }
  22. resVec.push_back(subVec);
  23. }
  24. return resVec;
  25. }
  26. };




Binary Tree Level Order Traversal

原文:http://www.cnblogs.com/flyjameschen/p/fab978d81dfb209c08ab3a42af9d0823.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!