算法练习(16)-水平翻转一颗二叉树
依旧还是层次遍历, 按层入队, 然后出队时, 交换左右节点
public static void flipTree(TreeNode node) { if (node == null) { return; } Queue<TreeNode> queue = new LinkedList<>(); queue.add(node); while (!queue.isEmpty()) { TreeNode n = queue.poll(); if (n.left != null) { queue.add(n.left); } if (n.right != null) { queue.add(n.right); } TreeNode left = n.left; TreeNode right = n.right; n.left = right; n.right = left; } }
作者:菩提树下的杨过
出处:http://yjmyzz.cnblogs.com
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
出处:http://yjmyzz.cnblogs.com
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。