数据结构
1、概念
计算机对数据进行组织存储的方式(存储快查找慢,存储慢查找快)不同可以使增删改查效率不同。
2常用的数据结构
数组、链表、树、队列、栈、堆、图、散列表(haxi)
- 队列 特点:FIFO:先进先出
- 栈
二、数据结构在java里的应用
1、定义一个容器
- 创建一个存放数据的数组,要能存放各种类型的数据就把存储数据的数组变为Object,比如:
rivate Object[] arr;
2、查看内容
- 重写toString方法
3、添加数据并自动扩容
- 设计一个添加数据的方法add,每调用一次把数据添加到数组里面,
- 先判断是否需要扩容
- 使用if语句,如果索引长度达到界限,则执行建立扩容
- 把元数据转移到新数组
- 修改引用地址
4、删除数据
- 定义根据索引位置删除数据方法
- 判断输入数据是否非法(是否数组越界)
- 删除指定索引处的元素
5、修改数据
- 定义根据索引位置删除数据方法
- 判断输入数据是否非法(是否数组越界)
- 替换指定索引处的元素
6、查询数据
6、1返回数据第一次出现的索引
6、2是否包含某个数据
调用6.1方法的返回值,如果为正则包含,反之则不包含
三、链表结构
1、链表结果示意图(单向链表)
2、自定义一个类型Node(里面有两个字段)
- 一个object类型字段存放值
- 一个Node类型字段存放下一个Node对象地址