• 手机版

    扫码体验手机版

  • 微信公众号

    扫码关注公众号

国内首家协议开发

软芯音视解码保护平台

在线
客服

发布
需求

在线
聊天

天盟
APP

天盟APP下载

关注
微信

微信扫一扫访问
顶部

javascript 使用递归创建二叉树

初学二叉树,参考了网上使用递归创建二叉树的方法,发现只能创建数字型二叉树,所以我想实现一个创建方法:可以接受字符串,然后按照添加顺序,从左到右创建节点。
比如说,传入7个值,我希望它的结构是这样的:

                    value1

        value2            value3

value4    value6    value5    value7
我想了半天也没有想出,希望大家指点一下。


附带一份代码供大家参考:
function BinarySearchTree() {    var Node = function(key) {    this.key = key;    this.left = null; //左键(元素)    this.right = null; //右键(元素)}var root = null; //根元素    //向树中插入一个新键    this.insert = function(key) {    if(root === null) { //判断根元素是否存在        root = newNode;    } else {        insertNode(root, newNode);    }}/* node  根节点 * newNode 新节点  */var insertNode = function(node, newNode) {//判断新元素的key值是小于父元素的keyif(newNode.key < node.key) {//新元素的key值小于父元素的key,新节点将被插入在父元素左侧。    if(node.left === null) { //如果没有左侧子节点,就在这插入新节点         node.left = newNode;    } else { //左侧已经存在新节点啦,递归自己到树的下一层         insertNode(node.left, newNode);    }} else {    if(node.right === null) {        node.right = newNode;    } else {        insertNode(node.right, newNode);    }    }    }}var tree = new BinarySearchTree();

免责声明:本内容仅代表回答会员见解不代表天盟观点,请谨慎对待。

版权声明:作者保留权利,不代表天盟立场。

使用道具 举报

发新帖

发布任务需求已有1031167位用户正在使用天盟网服务

发布分类: *
任务预算: *
需求内容: *
手机号码: *
任务商家报价为
  • 预算价 :
  • 成交价 :
  • 完工期 :
  • 质保期 :

* 最终任务项目以服务商报价、双方协商为准!