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


Posted in Javascript onJune 13, 2017

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

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实现从小到大的数组转换成二叉搜索树,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
javascript基础知识大集锦(一) 推荐收藏
Jan 13 Javascript
如何设置iframe高度自适应在跨域情况下的可用方法
Sep 06 Javascript
window.print打印指定div指定网页指定区域的方法
Aug 04 Javascript
jquery实现叠层3D文字特效代码分享
Aug 21 Javascript
Bootstrap~多级导航(级联导航)的实现效果【附代码】
Mar 08 Javascript
JS实现商品筛选功能
Aug 19 Javascript
vue项目总结之文件夹结构配置详解
Dec 13 Javascript
JavaScript EventEmitter 背后的秘密 完整版
Mar 29 Javascript
JS实现获取自定义属性data值的方法示例
Dec 19 Javascript
深入学习TypeScript 、React、 Redux和Ant-Design的最佳实践
Jun 17 Javascript
webpack中的模式(mode)使用详解
Feb 20 Javascript
uni-app使用微信小程序云函数的步骤示例
May 22 Javascript
微信小程序实现移动端滑动分页效果(ajax)
Jun 13 #Javascript
详解AngularJs路由之Ui-router-resolve(预加载)
Jun 13 #Javascript
微信小程序动态显示项目倒计时效果
Jun 13 #Javascript
深究AngularJS之ui-router详解
Jun 13 #Javascript
微信小程序自定义导航隐藏和显示功能
Jun 13 #Javascript
深究AngularJS——ng-checked(回写:带真实案例代码)
Jun 13 #Javascript
详解vue项目优化之按需加载组件-使用webpack require.ensure
Jun 13 #Javascript
You might like
php 使用file_get_contents读取大文件的方法
2014/11/13 PHP
Laravel如何创建服务器提供者实例代码
2019/04/15 PHP
php利用array_search与array_column实现二维数组查找
2019/07/08 PHP
javascript 有趣而诡异的数组
2009/04/06 Javascript
JS数学函数Exp使用说明
2012/08/09 Javascript
jquery入门—选择器实现隔行变色实例代码
2013/01/04 Javascript
Nodejs进程管理模块forever详解
2014/06/01 NodeJs
JavaScript访问CSS属性的几种方式介绍
2014/07/21 Javascript
jQuery中:focus选择器用法实例
2014/12/30 Javascript
jquery中map函数遍历数组用法实例
2015/05/18 Javascript
javascript+HTML5的canvas实现七夕情人节3D玫瑰花效果代码
2015/08/04 Javascript
JavaScript中实现无缝滚动、分享到侧边栏实例代码
2016/04/06 Javascript
详解webpack中的hash、chunkhash、contenthash区别
2018/01/05 Javascript
浅析vue中常见循环遍历指令的使用 v-for
2018/04/18 Javascript
解决layui中table异步数据请求不支持自定义返回数据格式的问题
2018/08/19 Javascript
JavaScript实现五子棋游戏的方法详解
2019/07/08 Javascript
jQuery中DOM常见操作实例小结
2019/08/01 jQuery
[02:55]DOTA2英雄基础教程 发条技师
2013/12/04 DOTA
python实现自动登录人人网并访问最近来访者实例
2014/09/26 Python
python实现mysql的单引号字符串过滤方法
2015/11/14 Python
python购物车程序简单代码
2018/04/18 Python
python 进程的几种创建方式详解
2019/08/29 Python
Python  word实现读取及导出代码解析
2020/07/09 Python
浅谈anaconda python 版本对应关系
2020/10/07 Python
荷兰最大的鞋子、服装和运动折扣店:Bristol
2021/01/07 全球购物
酒店人事专员岗位职责
2013/12/19 职场文书
我的中国心演讲稿
2014/09/04 职场文书
党员四风自我剖析材料思想汇报
2014/09/13 职场文书
工作时间擅自离岗检讨书
2014/10/24 职场文书
护士年终考核评语
2014/12/31 职场文书
2015入党自荐书范文
2015/03/05 职场文书
仓库统计员岗位职责
2015/04/14 职场文书
资产移交协议书
2016/03/24 职场文书
pytorch中F.avg_pool1d()和F.avg_pool2d()的使用操作
2021/05/22 Python
根德5570型九灯四波段立体声收音机是电子管收音机的楷模 ? 再论5570
2022/04/05 无线电
总结三种用 Python 作为小程序后端的方式
2022/05/02 Python