# 常用数据结构
——————————————————————————–
## 树(Tree)
– 概念:树是n(n>=0)个节点的有限集T,T为空时称为空树,否则他满足如下两个条件:
– 有且仅有一个特定的根(root)节点 – 其余的节点可以分为m(m>=0)个互不相交的子集T1,T2,T3…Tm,其中每个子集本身又是一棵树,称之为子树(SubTree)
– 特性:一棵非空树是由若干棵子树构成的,而子树又可由若干棵更小的子树构成。而这里的子树可以是叶子也可以是分支
– 二叉树: 就是每个节点最多有两个子树的树结构
– 满二叉树:除最后一层无子节点,每一层的所有节点都有两个子节点 – 完全二叉树:只有最下面的两层子节点能小于2,且最下面一层只能空缺右边节点
## 链表
– 链表由一系列结点组成,每个结点包含两部分:一是储存数据元素的数据域,二是储存下一个结点地址的指针域
## 数组
– 概念:元素按序排列的集合
## 堆/栈
– 堆:树形数据结构 – 栈:先进后出特殊线性表
## 队列
-概念:表尾插入并表头删除的先进先出的特殊线性表
## 图 – 概念:图是由非空的顶点集合和一个描述顶点之间的关系——边(或弧)的集合组成。
## 散列表
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/113827.html原文链接:https://javaforall.cn