关于文案的网站,在IIs下建设一个网站,史家小学网站建设,网址大全下载app前言
翻转二叉树的规则:
1.将二叉树所有节点以根节点为中心进行左右交换。
实现原理
递归实现:采用后续遍历的方式交换节点。同样也可以采用前序递归的方式#xff0c;必须按分层替换。所以不可以用中序递归方式。
1.递归退出条件:节点的值为空#xff0c;返回null。
2…前言
翻转二叉树的规则:
1.将二叉树所有节点以根节点为中心进行左右交换。
实现原理
递归实现:采用后续遍历的方式交换节点。同样也可以采用前序递归的方式必须按分层替换。所以不可以用中序递归方式。
1.递归退出条件:节点的值为空返回null。
2.递归函数:invertTrees
具体代码实现
package test11;class TreeNode {int val;TreeNode left;TreeNode right;TreeNode() {}TreeNode(int val) { this.val val; }TreeNode(int val, TreeNode left, TreeNode right) {this.val val;this.left left;this.right right;}
}class Solution {public TreeNode invertTree(TreeNode root) {if(rootnull){return null;}invertTree(root.left);invertTree(root.right);TreeNode tmproot.left;root.leftroot.right;root.righttmp;return root;}public static void main(String[] args) {Solution solutionnew Solution();TreeNode treeNodenew TreeNode(1);treeNode.leftnew TreeNode(2);treeNode.left.leftnew TreeNode(3);treeNode.left.rightnew TreeNode(4);TreeNode newTreeNodesolution.invertTree(treeNode);}
}
QA:待定