二叉树的添加与查找

添加:

添加的时候可以用数组,循环添加,我是一步一步测试方便,才一个一个添加。

 1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4     <meta charset="UTF-8">
 5     <title>Document</title>
 6 <script>
 7 var root=null;
 8 function bt_add(node,n){
 9     if(node==null){
10         alert('没有根节点把'+n+'当成根节点');
11         node={
12             value:n,
13             l:null,
14             r:null
15         };
16     }else{
17         if(node.value==n){
18             return;
19         }else if(node.value<n){
20             alert('试图往右走');
21             node.r=bt_add(node.r,n);
22         }else{
23             alert('试图往左走');
24             node.l=bt_add(node.l,n);
25         }
26     }
27     return node;
28 }
29 root=bt_add(root,50);
30 root=bt_add(root,35);
31 root=bt_add(root,60);
32 root=bt_add(root,21);
33 root=bt_add(root,45);
34 root=bt_add(root,55);
35 root=bt_add(root,70);
36 </script>
37 </head>
38 <body>
39     
40 </body>
41 </html>

查找:

 1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4     <meta charset="UTF-8">
 5     <title>Document</title>
 6 <script>
 7 var root=null;
 8 function bt_add(node,n){
 9     if(node==null){
10         node={
11             value:n,
12             l:null,
13             r:null
14         };
15     }else{
16         if(node.value==n){
17             return;
18         }else if(node.value<n){
19             node.r=bt_add(node.r,n);
20         }else{
21             node.l=bt_add(node.l,n);
22         }
23     }
24     return node;
25 }
26 function bt_find(node,n){
27     if(node==null){
28         return false;
29     }else{
30         if(node.value==n){
31             return true;
32         }else if(node.value<n){
33             return bt_find(node.r,n);
34         }else{
35             return bt_find(node.l,n);
36         }
37     }
38 }
39 root=bt_add(root,50);
40 root=bt_add(root,35);
41 root=bt_add(root,60);
42 root=bt_add(root,21);
43 root=bt_add(root,45);
44 root=bt_add(root,55);
45 root=bt_add(root,70);
46 alert(bt_find(root,5));
47 </script>
48 </head>
49 <body>
50     
51 </body>
52 </html>
原文地址:https://www.cnblogs.com/yty12345/p/5388975.html