二叉树 | 搜索树(排序树/查找树)

特点

1. data域不允许重复
2. 左节点的data值小于父亲节点的data 右边节点的data大于父亲节点的data
3. 结构上多了一个指向父亲节点的指针 可以回退 方便查询
4. 每一颗子树也是一个二叉搜索树
5. 其中序遍历结果:数字从小到大

 

构建

	// 结点
	 每个结点只有一个有效父亲结点
	 function TreeNode(x) {
	    this.val = x;
	    this.left = null;
	    this.right = null;
	    this.lParent = null;
	    this.rParent = null;

	    this.appendLeft = function(node){
	    	this.left = node;
	    } 
	    this.appendRight = function(node) {
	    	this.right = node;
	    }
	    this.appendLeftParent = function(node){
	    	this.lParent = node;
	    }
	    this.appendRightParent = function(node){
	    	this.rParent = node;
	    }
	} 
// 查找树构建
	function BSTree(){
		this.root = null;

		this.insert = function(node){
			if(!this.root){
				this.root = node;
			}
			else{
				// 从根节点开始比较
				let cur = this.r
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值