加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

算法与数据结构基础 - 数组(Array)

发布时间:2020-12-14 04:39:42 所属栏目:大数据 来源:网络整理
导读:数组基础 数组是最基础的数据结构,特点是O(1)时间读取任意下标元素,经常应用于排序(Sort)、双指针(Two Pointers)、二分查找(Binary Search)、动态规划(DP)等算法。顺序访问数组、按下标取值是对数组的常见操作。 ? 相关LeetCode题: 905.?Sort Array By Pa

数组基础

数组是最基础的数据结构,特点是O(1)时间读取任意下标元素,经常应用于排序(Sort)、双指针(Two Pointers)、二分查找(Binary Search)、动态规划(DP)等算法。顺序访问数组、按下标取值是对数组的常见操作。

?

相关LeetCode题:

905.?Sort Array By Parity? 题解

922.?Sort Array By Parity II??题解

977.?Squares of a Sorted Array? 题解

1150.?Check If a Number Is Majority Element in a Sorted Array? 题解

896.?Monotonic Array? 题解

448.?Find All Numbers Disappeared in an Array? 题解

26.?Remove Duplicates from Sorted Array? 题解

88.?Merge Sorted Array? 题解

189.?Rotate Array? 题解

941.?Valid Mountain Array? 题解

31.?Next Permutation? 题解

?

滑动窗口

一前一后指针遍历数组,这种方法叫做滑动窗口(Sliding Window),也是遍历数组的常用方式。更多关于滑动窗口详见:

算法与数据结构基础 - 滑动窗口(Sliding Window)

?

相关LeetCode题:

1040.?Moving Stones Until Consecutive II??题解

1151.?Minimum Swaps to Group All 1‘s Together??题解

?

Matrix

二维数组即矩阵(Matrix),也是常见的数据结构,可以用于表示图。

?

相关LeetCode题:

867.?Transpose Matrix??题解

566.?Reshape the Matrix??题解

118.?Pascal‘s Triangle? 题解

695.?Max Area of Island? 题解

835.?Image Overlap? 题解

48.?Rotate Image? 题解

54.?Spiral Matrix? 题解

59.?Spiral Matrix II? 题解

85.?Maximal Rectangle? 题解

?

Prefix sum

Prefix sum是数组、矩阵应用的一个技巧,其有助于降低求解一些子数组问题的时间复杂度。

?

相关LeetCode题:

548.?Split Array with Equal Sum? 题解

1031.?Maximum Sum of Two Non-Overlapping Subarrays? 题解

209.?Minimum Size Subarray Sum? 题解?

1074.?Number of Submatrices That Sum to Target? 题解?

?

HashTable

数组与HashTable结合使用可以产生一些“火花”、降低一些问题求解的时间复杂度。例如用HashTable为数组元素计数,或用HashTable为数组元素建立反向索引。更多关于HashTable详见:

算法与数据结构基础 - 哈希表(Hash Table)

?

相关LeetCode题:

380.?Insert Delete GetRandom O(1)??题解

560.?Subarray Sum Equals K??题解

954.?Array of Doubled Pairs? 题解

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读