使用JavaScript实现二叉树的前序遍历,中序遍历,后序遍历
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> </head> <body> <script> function Node(value){ this.value = value; this.left = null; this.right = null; } var nodeA = new Node("a"); var nodeB = new Node("b"); var nodeC = new Node("c"); var nodeD = new Node("d"); var nodeE = new Node("e"); var nodeF = new Node("f"); var nodeG = new Node("g"); nodeA.left = nodeB; nodeA.right = nodeC; nodeB.left = nodeD; nodeB.right = nodeE; nodeC.left = nodeF; nodeC.right = nodeG; //前序遍历:先打印当前节点,再打印左边子树的节点,再打印右边子树的节点 //中序遍历:先打印左边子树的节点,再打印当前节点,再打印右边子树的节点 //后序遍历:先打印左边子树的节点,再打印右边子树的节点,再打印当前节点 //-------前序遍历---begin-----// function DLR(root){//前序遍历 if(root == null) return; console.log(root.value);//先输出 DLR(root.left); DLR(root.right); } DLR(nodeA);//a b d e c f g //-------前序遍历---end-----// //-------中序遍历---begin-----// function LDR(root){//前序遍历 if(root == null) return; LDR(root.left); console.log(root.value); LDR(root.right); } LDR(nodeA);//d b e a f c g //-------中序遍历---end-----// //-------后序遍历---begin-----// function LRD(root){//前序遍历 if(root == null) return; LRD(root.left); LRD(root.right); console.log(root.value); } LRD(nodeA);//d e b f g c a //-------后序遍历---end-----// </script> </body> </html>
二叉树遍历
1.《4.二叉树的前序-中序-后序遍历(JavaScript版)》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。
2.《4.二叉树的前序-中序-后序遍历(JavaScript版)》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。
3.文章转载时请保留本站内容来源地址,https://www.cxvn.com/study/26770.html