数据结构一些基本概念

  1. 数据项:具有原子性,是不可分割的最小数据单位。红色线框
  2. 数据元素:是数据的基本单位,是数据集合的个体。蓝色线框
  3. 数据对象:是性质相同的数据元素的集合。黄色线框
    在这里插入图片描述
数据结构=逻辑结构+存储结构+(在存储结构上的)运算/操作

在这里插入图片描述
逻辑结构细分为四种基本类型:集合结构、线性结构(一对一)、树状结构(一对多)、网状结构(多对多)。

线性表是n个类型相同数据元素的有限序列

链表是一系列的存储数据元素的单元通过指针串接起来形成的,因此每个单元至少有两个域,一个域用于数据元素的存储,另一个是指向其他单元的指针。
这里具有一个数据域和多个指针域的存储单元通常称为结点(node)
只有一个指针结点,称为单链表,只能通过前驱结点找到后续结点。

栈(后进先出)是运算受限的线性表,其限制是仅允许在表的一端进行插入和删除的操作,不允许在其他任何位置进行插入、查找、删除等操作。
表中进行插入、删除操作的一端称为栈顶,栈顶保存的元素称为栈顶元素,相对的,表的另一端称为栈底。

队列(先进先出)也是一种受限的线性表,其限制是仅允许在表的一端进行插入,而在表的另一端进行删除。在队列中把插入数据元素的一端称为队尾,删除数据元素的一端称为队首。

树是n个结点的有限集,n=0为空树,n>0为非空树

结点的度与树的度:
结点拥有的子树的数目称为结点的度(Degree)。
度为 0的结点称为叶子(leaf)或终端结点。
度不为0的结点称为非终端结点或分支结点。除根之外的分支结点也称为内部结点。
树内各结点的度的最大值称为树的度.
在这里插入图片描述
结点的层次和树的深度:
结点的层次(level)从根开始定义,层次数为1的结点是根节点,其子树的根的层次数为2.
树中结点的最大层次数称为树的深度(Depth)或高度(通俗点就是有多少层)。
在这里插入图片描述
二叉树:
每个结点的度均不超过2的有序树,称为二叉树。
与树的递归定义类似,二叉树的递归定义如下:
二叉树或者是一颗空树,或者是一颗由一个根节点和两颗互不相交的分别 称为根的左子树和右子树的子树所组成的非空树。
二叉树中每个结点的孩子数只能是0、1或2个,并且每个孩子都有左右之分。
完全二叉树:
若一棵满二叉树中,在最下层从最右侧起去掉相邻的若干叶子结点,得到的二叉树即为完全二叉树。
满二叉树必为完全二叉树,而完全二叉树不一定是满二叉树。
在这里插入图片描述
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值