侧边栏壁纸
博主头像
神奇的程序员

今天的努力只为未来

  • 累计撰写 170 篇文章
  • 累计创建 27 个标签
  • 累计收到 225 条评论

目 录CONTENT

文章目录

数据结构:数组的基础知识

神奇的程序员
2020-02-20 / 0 评论 / 13 点赞 / 641 阅读 / 637 字 正在检测是否收录...

数组的认识

概念

数组同链表一样,也是数据呈线性排列的一种数据结构。

优点

访问数据简单

缺点

添加和删除数据比较耗时

特点

  • 数组的形式

如图所示,a是数组的名字,[]中的数字表示该数据是数组中的第几个数据(数组下标)

  • 数组在内存中的存储

如图所示,数据会按顺序存储在内存的连续空间内。

数组的访问

由于数据是存储在连续空间内,所以每个数据的内存地址都可以通过数组下标算出,我们就可以通过下标直接访问目标数据(随机访问)。

比如我们要访问Red,如果使用指针就只能从头开始查找,但在数组中,只要指定Red所在数组中的下标,便能直接访问。

数组元素的增加

将数据添加到数组的任意位置,需要在数组的末尾增加新的存储空间,为了给新数据腾出位置,要把已有数据一个个移开,最后在空出来的要添加元素的位置写入要添加的新数据。

例如,要将Green元素插入到Blue和Yellow之间。如图所示

在数组的末尾增加新的存储空间


将Red元素移至新存储空间之后

将Yellow元素移至新存储空间之后

将Green插入新存储空间中

数组元素的删除

删除数组中,任意位置的数据,需要先删掉目标数据,然后把后面的数据一个个往空位移,最后删掉多余的空间。

例如,要删除Green元素。

删掉目标数据

把Yellow移向空位

把Red移向空位

删掉多余部分

写在最后

  • 文中使用的图片源自《我的第一本算法书》,如若侵权,请评论区留言,作者立即删除相关图片。
  • 文中如有错误,欢迎在评论区指正,如果这篇文章帮到了你,欢迎点赞和关注😊
  • 本文首发于掘金,未经许可禁止转载💌
13

评论区