1、数组
数组是一些具有相同类型的数据的集合,而是数组是固定大小的结构。每个数组都有指定位置的下标,可通过指定的下标查找出数组里的数组。
数组的数据类型可以是整型、字符型、字符串型。当没在里面存值时,每种类型的数组都会有一个默认的值。
2、链表
链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。
链表是一种非连续、非顺序的存储结构,链表中的每个节点通过指针指向下一个节点的位置。
链表的节点通常情况下一般包含(1)元素数据(2)指向下一个元素的指针
并且链表必须顺序访问数据,并且无法进行随机访问。
对于数组而言,链表通常用于查询,因为增加和删除,需要移动节点,对资源的消耗大。
3、队列
队列是一种操作受限的线性表,是指只允许在表的一端进行插入操作的数据结构,具有“先进先出”的特点。类似于现实中的排队。
队列中的主要是队头的指针和队尾的指针。当第一次新增的时候队头和队尾指向的都是新增的那个节点,再次添加时队尾就指向新的那个节点了。
当删除的时,去掉队头指向的那个节点。
4、栈
栈是一种“先进后出”的一种结构。主要是通过psuh向栈中添加元素,pop移除栈顶的元素。
5.树
树型的结构可分为许多种,可有二分查找树、红黑树、B树、B+树。
树的结构一般有
key:存储在节点中的值。
left:指向左孩子的指针。
右:指向正确孩子的指针。
p:指向父节点的指针。
B+树结构6、图
图可分为有向图和无向图。
在图中,最基本的单元是顶点(vertex),相当于树中的节点。顶点之间的关联关系,被称为边(edge)。
上图是用BFS(广度优先搜索算法)查找出来的节点4所指向下一个节点有关联的节点
java软件编程入门自学书淘宝¥49.8¥79.8购买已下架