• 二叉树的添加与查找


    添加:

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

     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>
  • 相关阅读:
    问题记录_Idea2021.2.3版本,Windows11版本,注册无法跳转Google浏览器
    问题记录_在IDEA中使用Git操作缓慢
    百页 PPT BPF 技术全览 深入浅出 BPF 技术
    揭秘 BPF map 前生今世
    一道双哈希题,但是为什么TLE??2021山东icpc省赛 F题 Birthday Cake
    oracle游标使用的几个场景
    MySQL 锁问题(脏读、锁阻塞、死锁)
    oracle存储过程中的变量
    tableau学习
    Power BI学习
  • 原文地址:https://www.cnblogs.com/yty12345/p/5388975.html
Copyright © 2020-2023  润新知