Javascript实现从小到大的数组转换成二叉搜索树

 更新时间:2017年06月13日 16:41:51   作者:Cyan1614  
这篇文章主要介绍了Javascript实现从小到大的数组转换成二叉搜索树的相关资料,需要的朋友可以参考下

废话不多说了,直接给大家贴代码了,具体代码如下所示:

var Array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; 
var Tree = createTree(Array); 
console.log(Tree); 
// 构造一个节点 
function Node(nodeData, leftData, rightData) { 
  this.nodeData = nodeData; 
  this.leftData = leftData; 
  this.rightData = rightData; 
} 
// 每次取中点作为根节点,向左和向右递归 
function createTree(array) { 
  if (array.length <= 0) { 
    return null; 
  } else { 
    var mid = parseInt(array.length / 2); 
    var node = new Node(array[mid], null, null); 
    var leftArray = array.slice(0 , mid); 
    var rightArray = array.slice(mid + 1 , array.length ); 
    node.leftData = createTree(leftArray); 
    node.rightData = createTree(rightArray); 
    return node; 
  } 
} 

以上所述是小编给大家介绍的Javascript实现从小到大的数组转换成二叉搜索树,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • js修改input的type属性问题探讨

    js修改input的type属性问题探讨

    当input元素还未插入文档流之前,是可以修改它的值的,在ie和ff下都没问题。但如果input已经存在于页面,其type属性在ie下就成了只读属性了,不可以修改
    2013-10-10
  • JavaScript中for循环的几种写法与效率总结

    JavaScript中for循环的几种写法与效率总结

    每个接触JS的开发人员都不可避免的与for循环打交道,毕竟这是遍历必不可少的工具之一。然而当循环次数比较大时,效率问题必须重视。下面这篇文章就主要介绍了JavaScript中几种for循环的写法与效率,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-02-02
  • JS中的const命令你真懂它吗

    JS中的const命令你真懂它吗

    这篇文章主要介绍了JS中的const命令你真懂它吗,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-03-03
  • 微信小程序冒泡事件及其阻止方法实例分析

    微信小程序冒泡事件及其阻止方法实例分析

    这篇文章主要介绍了微信小程序冒泡事件及其阻止方法,结合实例形式分析了事件分类、冒泡及相应阻止操作方法,需要的朋友可以参考下
    2018-12-12
  • assert()函数用法总结(推荐)

    assert()函数用法总结(推荐)

    assert的作用是现计算表达式 expression ,如果其值为假(即为0),那么它先向stderr打印一条出错信息,然后通过调用 abort 来终止程序运行。这篇文章主要介绍了assert()函数用法总结,需要的的朋友参考下
    2017-01-01
  • JS上传前预览图片实例

    JS上传前预览图片实例

    上传图片对图片进行一下预览,可以了解图片上传后大概会是什么样子,此功能用js实现,然后在fileupload控件的change事件中调用,这样当用fileupload选择完图片以后,图片就会自动显示出来了。功能很简单,却很实用。
    2013-03-03
  • JavaScript实现模态对话框实例

    JavaScript实现模态对话框实例

    这篇文章主要介绍了JavaScript实现模态对话框实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-01-01
  • 详解json串反转义(消除反斜杠)

    详解json串反转义(消除反斜杠)

    这篇文章主要介绍了详解json串反转义(消除反斜杠),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-08-08
  • JavaScript中eval()函数用法详解

    JavaScript中eval()函数用法详解

    eval() 函数计算 JavaScript 字符串,并把它作为脚本代码来执行,本文给大家
    2015-12-12
  • 深入浅析javascript继承体系

    深入浅析javascript继承体系

    这篇文章主要介绍了javascript继承体系的相关资料,需要的朋友可以参考下
    2017-10-10

最新评论