leetcode 226. Invert Binary Tree

叁歲伎倆 2022-07-26 11:07 48阅读 0赞

Invert a binary tree.

  1. 4
  2. / \
  3. 2 7
  4. / \ / \
  5. 1 3 6 9

to

  1. 4
  2. / \
  3. 7 2
  4. / \ / \
  5. 9 6 3 1
  6. class Solution {
  7. public:
  8. TreeNode* invertTree(TreeNode* root) {
  9. if(root==NULL)
  10. return NULL;
  11. vector<TreeNode*>que;
  12. que.push_back(root);
  13. while(!que.empty())
  14. {
  15. vector<TreeNode*>newque;
  16. for(int i=0;i<que.size();i++)
  17. {
  18. if(que[i]->left!=NULL)
  19. newque.push_back(que[i]->left);
  20. if(que[i]->right!=NULL)
  21. newque.push_back(que[i]->right);
  22. }
  23. for (int i = 0; i < que.size(); i++)
  24. {
  25. TreeNode*l = que[i]->left;
  26. que[i]->left = que[i]->right;
  27. que[i]->right = l;
  28. }
  29. que=newque;
  30. }
  31. return root;
  32. }
  33. };

accept

发表评论

表情:
评论列表 (有 0 条评论,48人围观)

还没有评论,来说两句吧...

相关阅读