Update226.翻转二叉树,简化C#代码

This commit is contained in:
eeee0717
2023-11-15 08:57:19 +08:00
parent aad5029a1c
commit dba4e9d00e

View File

@ -1018,25 +1018,13 @@ public class Solution {
```csharp
//迭代
public class Solution {
public TreeNode InvertTree(TreeNode root) {
if (root == null) return null;
Stack<TreeNode> stack=new Stack<TreeNode>();
stack.Push(root);
while(stack.Count>0)
{
TreeNode node = stack.Pop();
swap(node);
if(node.right!=null) stack.Push(node.right);
if(node.left!=null) stack.Push(node.left);
}
return root;
}
public void swap(TreeNode node) {
TreeNode temp = node.left;
node.left = node.right;
node.right = temp;
}
public TreeNode InvertTree(TreeNode root) {
if(root == null) return root;
(root.left,root.right) = (root.right, root.left);
InvertTree(root.left);
InvertTree(root.right);
return root;
}
}
```