Skip to content

数组概述

数组是一种连续存储线性结构,元素类型相同,大小相等,数组是多维的,通过使用整型索引值来访问他们的元素,数组尺寸不能改变。

数组具有一下的特点:

  • 数组下标都是从 0 开始的。
  • 数组内存空间的地址是连续的。
  • 数组的元素是不能删的,只能覆盖。

正是因为数组的在内存空间的地址是连续的,所以我们在删除或者增添元素的时候,就难免要移动其他元素的地址。

数组的优点:

  • 存取速度快

数组的缺点:

  • 事先必须知道数组的长度
  • 空间通常是有限制的
  • 需要大块连续的内存块
  • 插入删除元素的效率很低

相关算法题

常用解法:

  1. 二分法查询
  2. 双指针法
  3. 哈希表
  4. 滑动窗口

所谓滑动窗口,就是不断的调节子序列的起始位置和终止位置,从而得出我们要想的结果。

实现滑动窗口,主要确定如下三点:

  • 窗口内是什么?
  • 如何移动窗口的起始位置?
  • 如何移动窗口的结束位置?