算法:二叉树翻转
Posted 前端精髓
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了算法:二叉树翻转相关的知识,希望对你有一定的参考价值。
描述:二叉树的数据结构如下,需要将二叉树各节点左右翻转
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);
}
}
知识点:
先序遍历,先访问根节点,然后以同样的方式访问左子树和右子树
其实算法并不难,需要一点点积累,必会有所收获,加油!!!
以上是关于算法:二叉树翻转的主要内容,如果未能解决你的问题,请参考以下文章