一 什么是数据结构
数据结构是计算机存储,组织数据的方式
1.1 线性结构
image.png
包括 线性表,数组,链表,栈,队列,哈希表
1.2 树形结构
image.png
包括二叉树,AVL树,红黑树,B树,堆,Trie,哈夫曼树,并查集
1.3 图形结构
image.png
包括 邻接矩阵,邻接表
二 线性表
线性表是具有n个相同类型元素的有限序列(n >= 0)
image.png
- a1是首节点(首元素),an是尾节点(尾元素)
- a1是a2的前驱,a2是a1的后继
常见的线性表有
- 数组
- 链表
- 栈
- 队列
- 哈希表(散列表)
三 数组
数组是一种顺序存储的线性表,所有元素的内存地址都是连续的。
例如
int [] array = new int []{11,22,33};
内存地址表现形式如下
image.png
注意:
- 在很多编程语言中,数组都有一个致命的缺点,无法动弹修改容量
- 在实际开发中,我们更期望数组的容量是可以动态改变的。











网友评论