宝哥软件园

在JavaScript数据结构和算法中 将二叉树插入节点并生成二叉树的例子

编辑:宝哥软件园 来源:互联网 时间:2021-08-27

本文介绍了一个JavaScript数据结构和算法的实例,包括在节点中插入二叉树和生成二叉树。分享给大家参考,如下:

Javascript数据结构和算法-插入节点和生成二叉树

在二叉树中,相对较小的值存储在左节点,较大的值存储在右节点

/* *在二叉树中,相对较小的值保存在左侧节点,较大的值保存在右侧节点* * * *//*用于生成节点*/函数节点(数据,左,右){this。数据=数据;//存储在节点中的数据是this.left=leftthis.right=右;this.show=show}函数show() {返回this.data}/*用于生成二叉树*/函数BST(){ this . root=null;this.insert=insert}/*将数据插入二叉树(1)让根节点成为当前节点。(2)如果待插入节点保存的数据小于当前节点,则将新的当前节点设置为原节点的左节点;相反,转到第4步。(3)如果当前节点的左节点为空,将新节点插入该位置并退出循环;否则,继续执行下一个循环。(4)将新的当前节点设置为原节点的右节点。(5)如果当前节点的右节点为空,将新节点插入该位置并退出循环;否则,继续执行下一个循环。* */函数插入(数据){ var n=new Node(数据,null,null);if(this . root==null){ this . root=n;} else { var current=this.rootvar父级;while(true){ parent=current;if(data current . data){ current=current . left;//如果要插入的节点保存的数据小于当前节点,则让新的当前节点为原节点的左节点If(current==null){//如果当前节点的左节点为null,则将新节点插入此位置并退出循环;否则,继续执行下一个while循环。parent . left=n;打破;} } else { current=current.right//如果要插入的节点保存的数据小于当前节点,则让新的当前节点作为左节点if (current==null) {parent。右=n;打破;} } } } } var nums=new BST();nums . insert(23);nums . insert(45);nums . insert(16);nums . insert(37);nums . insert(3);nums . insert(99);nums . insert(22);console . log(nums);使用在线HTML/CSS/JavaScript代码运行工具:http://tools.jb51.net/code/HtmlJsRun对上述代码进行测试,得到如下运行结果:

更多对JavaScript相关内容感兴趣的读者可以查看本网站专题:《JavaScript数据结构与算法技巧总结》、《JavaScript数学运算用法总结》、《JavaScript排序算法总结》、《JavaScript遍历算法与技巧总结》、《JavaScript查找算法技巧总结》、《JavaScript错误与调试技巧总结》、0103010

希望本文对JavaScript编程有所帮助。

更多资讯
游戏推荐
更多+