首页 > 代码库 > JavaScript二叉树的递归遍历方法
JavaScript二叉树的递归遍历方法
二叉树是由根节点,左子树,右子树组成,左子树和友子树分别是一个二叉树。
下面是一个二叉树的例子:
{ "ruleId":"", "name":"客户年龄大于20", "id":"root", "expression":"age>20", "yes":{ "name":"客户年龄大于25", "id":"root-true", "expression":"age>25", "yes":{ "name":"可贷金额为五万", "id":"root-true-true", "expression":"money = 50000" }, "no":{ "name":"可贷金额为三万", "id":"root-true-false", "expression":"money = 30000" } }, "no":{ "name":"客户年龄小于18", "id":"root-false", "expression":"age<18", "yes":{ "name":"不可贷款", "id":"root-false-true", "expression":"money = 0" }, "no":{ "name":"可贷金额为一万", "id":"root-false-false", "expression":"money = 10000" } } }
1)先序遍历
function preorder(data){ if(data){ console.log(data.name); preorder(data.yes); preorder(data.no) } }
2)中序遍历
function preorder(data){ if(data){ preorder(data.yes); console.log(data.name); preorder(data.no) } }
3)后序遍历
function preorder(data){ if(data){ preorder(data.yes); preorder(data.no); console.log(data); } }
这三种都属于深度优先遍历,因为优先往深处访问。
JavaScript二叉树的递归遍历方法
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。