没有大区别,主要是顺序
前序(根左右)
var preorderTraversal = function(root) {
let res=[];
function dfs(root){
if(root==null)return ;
res.push(root.val);
//递归左子树
dfs(root.left);
//递归右子树
dfs(root.right);
}
dfs(root);
return res
};
中序(左中右)
var inorderTraversal = function(root) {
let res=[];
function dfs(root){
if(root==null)return ;
dfs(root.left);
res.push(root.val);
dfs(root.right);
}
dfs(root);
return res;
};
后序(左右中)
var postorderTraversal = function(root) {
let res=[];
function dfs(root){
if(root==null)return ;
dfs(root.left);
dfs(root.right);
res.push(root.val);
}
dfs(root);
return res;
};