数据结构

数组 链表 二叉树

数组

数组特点;
1.内存地址连续
2.可以通过下标的成员访问,下标访问性能高
3.增删操作带来更大的性能消耗(保证数据的越界问题,需动态扩容)

链表

链表是线性的顺序存储数据,只是在内存地址上是不连续的,每个节点里保存到下一个节点的指针。
单向链表
在这里插入图片描述
双向链表
在这里插入图片描述

二叉树

二叉树:每个子节点只有两个节点的树,每个节点至多拥有两棵子树(即二叉树中不存在度大于2的结点),并且,二叉树的子树有左右之分,其次序不能任意颠倒。
在这里插入图片描述
二叉查找树也成为有序二叉查找树,满足二叉查找树的一般性质
1.任意节点的左子树不为空,则左子树的值均小于根节点的值
2.任意节点的右子树不为空,则右子树的值均大于根节点的值
3.任意节点的左右子树也分别是二叉查找树
4.没有键值相等的节点

遍历操作
三种遍历规则:
前序遍历:先访问根节点,再访问左节点,最后访问右节点(根-左-右)
中序遍历:先访问左节点,再访问根节点,最后访问右节点(左-根-右)
后序遍历:先访问左节点,再访问右节点,最后访问根节点(左-右-根)
在这里插入图片描述
前序遍历:4 2 1 3 2.5 6 5 5.5 7
中序遍历:1 2 2.5 3 4 5 5.5 6 7
后序遍历:1 2.5 3 2 5 5.5 7 6 4

查找前驱节点:小于当前节点的最大值
查找后驱节点:大于当前节点的最小值

删除节点
二叉树中删除节点本质上就是找前驱接待你或者后继节点来替代

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值