算法:二叉树翻转



描述:二叉树的数据结构如下,需要将二叉树各节点左右翻转
var node1 = {value: 1,left: {value: 2,left: {value: 4},right: {value: 5}},right: {value: 3,left: {value: 6},right: {value: 7}}}
思路:
1.先将左右节点交换位置2.再递归子节点
function reverse(node) {if (node != null) {let temp = node.left;node.left = node.right;node.right = temp;reverse(node.left);reverse(node.right);}}
知识点:
先序遍历,先访问根节点,然后以同样的方式访问左子树和右子树
其实算法并不难,需要一点点积累,必会有所收获,加油!!!
评论
