一、数组
1. 定义:数组是相同数据类型的元素按一定的顺序排列的集合,是一块连续的内存空间,通过使用整形索引值来访问他们的元素,是最简单,也是使用最广泛的数据结构。
2. 特点
优点:查询元素快,支持随机访问
缺点:
A. 新增和删除元素慢;
B. 元素单一,且大小固定
3. 分类:一维数组和多位数组
4. 使用场景:比如Array、ArrayList底层就是使用数组实现的
二、链表
1. 定义:链表是一种非连续、非顺序的结构,数据元素的逻辑顺序是通过链表中的指针连接实现的,链表由一系列结点组成。
2. 特点
优点:插入和删除元素快,空间没有限制,只能顺序访问
缺点:查询元素慢
3. 分类
单向链表:一个节点指向下一个节点;
双向链表:一个节点有两个指针域(指针域指向的是另一个节点);
循环链表:能通过任何一个节点找到其他所有的节点。
4. 使用场景:LinkedList底层就是使用双向链表结构实现的
原文:https://www.cnblogs.com/ruhuanxingyun/p/13344484.html