【leetcode】数组总结篇

162 阅读1分钟

数组总结

一、二分查找

  • 例题: 二分查找
  • 暴力解法时间复杂度:O(n)
  • 二分法时间复杂度:O(logn)

二、双指针法

数组中的元素为什么不能删除: 数组在内存中是连续的地址空间,不能释放单一元素,如果要释放,就是全释放(程序运行结束,回收内存栈空间)。

三、滑动窗口

四、螺旋数组

  • 例题:螺旋矩阵 螺旋矩阵2
  • 对于正方形(方阵)的二维数组只需要考虑转多少圈以及最后中间是否剩一个值。如果剩一个一个值需要再转完圈后再单独加中间的值。
  • 对于矩阵二维数组变成一维数组的情况,需要在转完圈后单独考虑最内圈剩的一行或者一列