这是关于数组的常见访谈前50个问题列表的集合。本文中的问题分为三个级别,以便读者可以根据难度级别逐步进行练习。
1级
- 检查数组中每个大小为k的段中是否存在键
- 查找数组中的最小和最大元素
- 编写程序以反转数组
- 编写程序以对给定数组进行排序
- 在数组中找到第K个最大数和第K个最小数
- 查找数组中整数的出现
- 对0、1和2的数组进行排序
- 数组的范围和精度
- 将所有负元素移到数组的一侧
- 找到两个排序数组的并集和交集
2级
- 编写程序以循环旋转数组一个
- 查找丢失的整数
- 给定总数的对数
- 在数组中查找重复项
- 使用Quicksort算法对数组进行排序
- 在三个排序的数组中查找共同的元素
- 在整数数组中找到第一个重复元素
- 在给定的整数数组中找到第一个非重复元素
- 在数组时间中找到最大的三个元素
- 重新排列阵列以交替显示正项和负项
- 查找是否有总和等于零的子数组
- 查找最大和连续子数组
- 查找大量的阶乘
- 查找最大乘积子数组
- 查找最长的连续子序列
- 在旋转和排序后的数组中找到最小元素
- 查找出现次数超过N / K次的所有元素
- 数组中给定索引范围的GCD
- 最小化高度之间的最大差异
- 到达终点的最小跳数
- 查找给定数组中的两个重复元素
- 查找一个三元组,将其总和成给定值
- 根据用户输入构造一个N * M矩阵
- 查找最大为1的行
- 以螺旋方式打印矩阵
- 查找一个数组是否是另一个数组的子集
- 在一个数组中实现两个堆栈
- 多数元素
- 波阵
- 困雨水
3级
- 最大指数
- 两个数组中的最大求和路径
- 查找缺失和重复
- 股票买卖问题
- 与给定总和配对
- 巧克力分销问题
- 最长连续子序列
- 打印给定数组中r元素的所有可能组合
- 硬币找零问题
- 最长的交替子序列