数据结构:数据用什么样的方式组合在一起
常见的数据结构:栈、队列、数组、链表、树
栈:
是一种先进后出的结构,只能从一段操作新增和删除,无法从数据中间增删,栈结构有两个名词:压栈、弹栈。分别为往栈里添加数据和删除数据。
栈结构很像弹匣,只能从一端新增和删除,并且先进后出。
队列:
是一种先进先出的数据结构,类似于从队列左边添加数据,从右边弹出数据,也无法从中间插入和删除。
数据会像排队一样,先进入队列的先被弹出。
数组:
数组是有序的数据结构,每一个元素都有自己的下标,所以可以很快通过下标找到指定元素。
优点:1.查找速度快,因为可以通过下标查找。
2.可以再数据中间做增删操作。
缺点:1.增删速度慢,因为从数组中间进行增删,会导致后面所有数据的下标改变。
数组的新增原理:1.先创建新数组。
2.将新元素放在指定下标处
3.将元素其余元素复制到新元素
链表:
是由一个个节点组成的,每个节点存自己的值以及下一个节点的地址。
优点:增删快,只需要修改左节点的地址然后记录下一个节点的地址
缺点:查询慢,需要一个个节点的查询