[原题连接](翻转牛群结构_牛客题霸_牛客网 (nowcoder.com))
这道题简单来讲就是给着棵树翻个面, 翻面后各个节点之间不会有子节点的交换, 但是每个节点的左右节点会做交换, 所以我们采用层序遍历来遍历二叉树, 在遍历的过程中交换每个节点的左右节点即可
public class Solution { public TreeNode invertTree (TreeNode root) { if(root == null) return root; Deque<TreeNode> queue = new ArrayDeque<>(); ArrayList<List<TreeNode>> lists = new ArrayList<>(); queue.add(root); while(!queue.isEmpty()) { int size = queue.size(); for(int i = 0; i < size; i++) { TreeNode poll = queue.poll(); if(poll.right != null) queue.add(poll.right); if(poll.left != null) queue.add(poll.left); TreeNode temp = poll.left; poll.left = poll.right; poll.right = temp; } } return root; }
}
具体代码参上
好的!本次分享到这就结束了
如果对铁汁你有帮助的话,记得点赞👍+收藏⭐️+关注➕
我在这先行拜谢了:)