数据结构:是指相互之间存在一种或多种特定关系的数据元素的集合。
数据存储结构:它是计算机的一个概念,简单讲,就是描述数据在计算机中存储方式的学科;常用的数据存储 方式就两种:顺序存储,非顺序存储!
数据结构之栈、队列
- 栈也可以称为堆栈
是一种先进后出的数据结构 js中的实现Array.push()、Array.pop() - 队列
是一种先进先出的数据结构 js中的实现Array.push()、Array.unshift()
数据存储结构之数组、链表
-
数组
每个元素的存储位置都可以通过简单计算得到,所以访问元素的时间都相同(直接访问数组下标) -
链表
数据的链接存储,由于每个元 素的存储位置是保存在它的前驱或后继结点中的,所以只有当访问到其前驱结点或后继结点后才能够按指针访问到自己,访问任一元素的时间与该元素结点在链接存 储中的位置有关。 -
数组与链表的区别
1、占用的内存空间
a.链表占用空间可以是连续的也可以是非连续的;
b.数组占用空间为连续的;
c.相同量数据数组占用内存较少
2、长度的可变性
a.链表可变
b.数组定义是需给出,超过长度会造成溢出(js中除外)
3、数据的操作
a.链表移动数据方便查询数据麻烦
b.数组查询数据方便移动数据麻烦
栈内存和堆内存
具体介绍可至另一篇文章中查看Javascript函数参数传递