开发工具与关键技术:数据结构基础
作者:卢雅婷
撰写时间:2020/04/22
之前我已经说过数据结构的分类为数组、栈、队列、链表、树、散列表、堆、图
但也只是粗略的解说一下其中的内容,今天来详细说一下其中的数组和栈。
1、 数组
所谓数组,是有序的元素序列。
数组是可以再内存中连续存储多个元素的结构,在内存中的分配也是连续的,数组中的元素通过数组下标进行访问,数组下标从0开始。
如何了解元素?
释义:定义了个一堆数组,其序列长度为10,数组的名字为a,每个格中存放的都是int类型的元素
例如下面这段代码就是将数组的第一个元素赋值为 1。
int[] data = new int[100];data[0] = 1;
优点:
1、按照索引查询元素速度快
2、按照索引遍历数组方便
缺点:
1、数组的大小固定后就无法扩容了
2、数组只能存储一种类型的数据
3、添加,删除的操作慢,因为要移动其他的元素。
适用场景:
频繁查询,对存储空间要求不大,很少增加和删除的情况。
要想了解栈,先要了解什么是线性表。
哪线性表是什么?
线性表的定义是:由n(n>=)个相同类型数据元素(结点)(a1,a2,……an)其中:n:数据元素的个数,也称表的长度。空表:n=0,记为()。
栈是一种特殊的线性表,