二叉树介绍

一、二叉树

1:概念

计算机科学中,二叉树是每个结点最多有两个子树的树结构。通常子树被称作“左子树”(left subtree)和“右子树”(right subtree)。二叉树常被用于实现二叉查找树和二叉堆。

2:分类

 

1:平衡二叉树:任意一个节点其左节点的层数与右节点的层数相差不超过1

 

2:完全二叉树:

 

除了叶子节点(没有子节点) 之外每个节点都有两个子节点

 

3 : 满二叉树:

(1) 所有层都是满的

(2) 要么没有子节点,有子节点就必须要有两个

 

 

4、二叉树的描述方式

 

前序:首先访问根节点 (根--》 左--》 右)

中序: 中间访问根节点(左--》 根 --》右)

后序: 最后访问根节点(左--》 右 --》 根)

 

5:数组去重和排序

1:数组去重(4)

(1):对象的 属性唯一值

(2):indexof属性比较返回数组

(3):定义一个flag;拿数组的第一个值,作为返回数组的第一个值,外层循环遍历数组,内层循返回数组,拿到数组中的值一一和 返回数组值比较,如果有相等就返回,最后判断flag是否push到返回数组。

 

2:排序

1:冒泡排序

两两笔记,每次呢选出 最大的一个,循环数组的长度。

 

2:选择排序

外层每次遍历,找出最小的数值与第一个值交欢

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值