翻转二叉树
来源:互联网 发布:券老大淘宝优惠券 编辑:程序博客网 时间:2024/06/06 08:31
翻转一棵二叉树。
/ \ / \
2 3 => 3 2
/ \
4 4
样例:
1 1/ \ / \
2 3 => 3 2
/ \
4 4
问题比较简单,这里给出递归和非递归的做法。
递归实现:
/** * Definition of TreeNode: * class TreeNode { * public: * int val; * TreeNode *left, *right; * TreeNode(int val) { * this->val = val; * this->left = this->right = NULL; * } * } *///递归实现void invertBinaryTree(TreeNode *root) { if (root == NULL) return; swap(node -> left, node -> right); invertBinaryTree(root->left); invertBinaryTree(root->right);}
/** * Definition of TreeNode: * class TreeNode { * public: * int val; * TreeNode *left, *right; * TreeNode(int val) { * this->val = val; * this->left = this->right = NULL; * } * } */ //非递归实现 void invertBinaryTree(TreeNode *root) { if (root == NULL) return; queue<TreeNode*> level; level.push(root); while (!level.empty()) { TreeNode* node = level.front(); level.pop(); swap(node->left, node->right); if (node->left != NULL) level.push(node->left); if (node->right != NULL) level.push(node->right); }}
1 0
- C++二叉树翻转
- 翻转二叉树
- 翻转二叉树
- 题目:翻转二叉树
- LintCode 翻转二叉树
- LinkCode-翻转二叉树
- 翻转二叉树
- 翻转二叉树
- 翻转二叉树
- LintCode_175_翻转二叉树
- 二叉树翻转
- lintcode ----翻转二叉树
- lintcode,翻转二叉树
- 翻转二叉树
- 翻转二叉树
- 翻转二叉树
- 翻转二叉树
- LintCode-翻转二叉树
- 登录页面
- 插入排序(c实现)
- 《在macbook上修改MySQL的初始密码》
- 安卓studio打包时出现OOM: GC overhead limit exceeded
- SwiftyJSON的使用
- 翻转二叉树
- spring事务管理
- LeetCode:String to Integer (atoi)没你想的那么简单
- gevent:轻松异步 I/O
- JavaScript sort的使用
- 对齐次矩阵(homogeneous matrix)的理解
- Android M 新的运行时权限开发者需要知道的一切
- 网页输出的种种bug
- 当CollapsingToolbarLayout与ToolBar如何设置Title居中