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 相关文章推荐
用JS剩余字数计算的代码
Jul 03 Javascript
[Web]防止用户复制页面内容和另存页面的方法
Feb 06 Javascript
js中精确计算加法和减法示例
Mar 28 Javascript
JS中如何判断传过来的JSON数据中是否存在某字段
Aug 18 Javascript
jquery实现的淡入淡出下拉菜单效果
Aug 25 Javascript
JS+canvas实现的五子棋游戏【人机大战版】
Jul 19 Javascript
JS实现HTML页面中动态显示当前时间完整示例
Jul 30 Javascript
vue实现条件判断动态绑定样式的方法
Sep 29 Javascript
详解vue数组遍历方法forEach和map的原理解析和实际应用
Nov 15 Javascript
JS滚轮控制图片缩放大小和拖动的实例代码
Nov 20 Javascript
如何理解Vue前后端数据交互与显示
May 10 Vue.js
vue-cli3.x配置全局的scss的时候报错问题及解决
Apr 30 Vue.js
微信小程序实现移动端滑动分页效果(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实现使用正则将文本中的网址转换成链接标签
2014/12/03 PHP
php进程间通讯实例分析
2016/07/11 PHP
Yii2验证器(Validator)用法分析
2016/07/23 PHP
mysql desc(DESCRIBE)命令实例讲解
2016/09/24 PHP
PHP实现文件上传下载实例
2016/10/18 PHP
JavaScript事件列表解说
2006/12/22 Javascript
JQuery的Validation插件中Remote验证的中文问题
2010/07/26 Javascript
Javascript解析URL方法详解
2014/12/05 Javascript
JavaScript返回网页中超链接数量的方法
2015/04/03 Javascript
深入浅析JavaScript面向对象和原型函数
2016/02/06 Javascript
在 Typescript 中使用可被复用的 Vue Mixin功能
2018/04/17 Javascript
详解node.js的http模块实例演示
2018/07/12 Javascript
JavaScript惰性载入函数实例分析
2019/03/27 Javascript
微信小程序实现定位及到指定位置导航的示例代码
2019/08/20 Javascript
微信小程序在text文本实现多种字体样式
2019/11/08 Javascript
vue项目中锚点定位替代方式
2019/11/13 Javascript
python 读入多行数据的实例
2018/04/19 Python
详解python:time模块用法
2019/03/25 Python
python中sort和sorted排序的实例方法
2019/08/26 Python
使用opencv识别图像红色区域,并输出红色区域中心点坐标
2020/06/02 Python
Python中Selenium模块的使用详解
2020/10/09 Python
Ubuntu配置Pytorch on Graph (PoG)环境过程图解
2020/11/19 Python
完美解决torch.cuda.is_available()一直返回False的玄学方法
2021/02/06 Python
HTML5本地存储localStorage、sessionStorage基本用法、遍历操作、异常处理等
2014/05/08 HTML / CSS
做一个能自适应高度的textarea的示例代码
2019/09/06 HTML / CSS
英国在线药房和在线医生:LloydsPharmacy
2019/10/21 全球购物
人力资源经理自我评价
2014/01/04 职场文书
银行员工辞职信范文
2014/01/20 职场文书
会议邀请书范文
2014/02/02 职场文书
国贸专业的职业规划书
2014/03/15 职场文书
活动总结书
2014/05/08 职场文书
保护环境演讲稿
2014/05/10 职场文书
信电学院毕业生自荐书
2014/05/24 职场文书
县人大领导班子四风对照检查材料思想汇报
2014/10/09 职场文书
会计稽核岗位职责
2015/04/13 职场文书
2015年检验员工作总结范文
2015/04/30 职场文书