
LeetCode习题
DabriaCKX
这个作者很懒,什么都没留下…
展开
-
7. 整数反转
给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。注意:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231, 231 − 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。解析:这道题其实很简单,就是对数字进行循环取余,唯一值得注意的是:数字的取值范围需要进行判断。具体详见代码class Solution { p...原创 2020-03-26 18:35:21 · 148 阅读 · 0 评论 -
1295. 统计位数为偶数的数字
题目:给你一个整数数组nums,请你返回其中位数为偶数的数字的个数。解析:有三种方法:第一种------已知范围为1 <= nums[i] <= 10^5,所以只有两个区间内的数为偶数位10~99以及1000~9999public int findNumbers(int[] nums) { int count=0; for(int i=0...原创 2020-03-14 19:56:26 · 503 阅读 · 0 评论 -
1365. 有多少小于当前数字的数字
题目:给你一个数组 nums,对于其中每个元素 nums[i],请你统计数组中比它小的所有数字的数目。换而言之,对于每个 nums[i] 你必须计算出有效的 j 的数量,其中 j 满足 j != i 且 nums[j] < nums[i] 。以数组形式返回答案。解析:根据题目要求,我们可以定义两个指针 i 和 j ,比较大小,用 j 去循环 i 后面的每一个数字。...原创 2020-03-14 19:30:11 · 155 阅读 · 0 评论 -
1013. 将数组分成和相等的三个部分
给定一个整数数组 A,只有我们可以将其划分为三个和相等的非空部分时才返回 true,否则返回 false。形式上,如果我们可以找出索引 i+1 < j 且满足 (A[0] + A[1] + ... + A[i] == A[i+1] + A[i+2] + ... + A[j-1] == A[j] + A[j-1] + ... + A[A.length - 1]) 就可以将数组三等分。...原创 2020-03-15 00:01:38 · 136 阅读 · 0 评论 -
724. 寻找数组的中心索引 905. 按奇偶排序数组
724. 给定一个整数类型的数组 nums,请编写一个能够返回数组“中心索引”的方法。我们是这样定义数组中心索引的:数组中心索引的左侧所有元素相加的和等于右侧所有元素相加的和。如果数组不存在中心索引,那么我们应该返回 -1。如果数组有多个中心索引,那么我们应该返回最靠近左边的那一个。示例 1:输入:nums = [1, 7, 3, 6, 5, 6]输出: 3解释:索引3...原创 2020-02-23 19:42:40 · 142 阅读 · 0 评论 -
283. 移动零 674.最长连续递增序列
283. 给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。示例:输入: [0,1,0,3,12]输出: [1,3,12,0,0]说明: 必须在原数组上操作,不能拷贝额外的数组。 尽量减少操作次数。解析:我们可以通过for循环,判断该数字是不是0,但是记住要保持非零元素的相对顺序。class Solution {...原创 2020-02-23 19:25:51 · 106 阅读 · 0 评论 -
209. 长度最小的子数组
给定一个含有 n 个正整数的数组和一个正整数 s ,找出该数组中满足其和 ≥ s 的长度最小的连续子数组。如果不存在符合条件的连续子数组,返回 0。示例:输入: s = 7, nums = [2,3,1,2,4,3]输出: 2解释: 子数组 [4,3] 是该条件下的长度最小的连续子数组。进阶:如果你已经完成了O(n) 时间复杂度的解法, 请尝试 O(n log n) 时间复杂...原创 2020-02-23 18:29:55 · 210 阅读 · 0 评论 -
169. 多数元素
给定一个大小为 n 的数组,找到其中的多数元素。多数元素是指在数组中出现次数大于 ⌊ n/2 ⌋ 的元素。你可以假设数组是非空的,并且给定的数组总是存在多数元素。示例 1:输入: [3,2,3]输出: 3示例 2:输入: [2,2,1,1,1,2,2]输出: 2分析:解法一:我们可以先排序,然后输出在数组中出现次数大于 ⌊ n/2 ⌋ 的元素。class Solu...原创 2020-02-23 17:56:38 · 282 阅读 · 0 评论 -
66. 给数组的数字加一
给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。最高位数字存放在数组的首位, 数组中每个元素只存储单个数字。你可以假设除了整数 0 之外,这个整数不会以零开头。示例 1:输入: [1,2,3]输出: [1,2,4]解释: 输入数组表示数字 123。示例 2:输入: [4,3,2,1]输出: [4,3,2,2]解释: 输入数组表示数字 4321。...原创 2020-02-23 17:22:29 · 1470 阅读 · 0 评论 -
1313. 解压缩编码列表
给你一个以行程长度编码压缩的整数列表 nums 。考虑每对相邻的两个元素 [a, b] = [nums[2*i], nums[2*i+1]] (其中 i >= 0 ),每一对都表示解压后有 a 个值为 b 的元素。请你返回解压后的列表。示例:输入:nums = [1,2,3,4]输出:[2,4,4,4]解释:第一对 [1,2] 代表着 2 的出现频次为 1,所以生成数组 ...原创 2020-02-23 16:35:59 · 201 阅读 · 0 评论 -
88.合并两个有序数组 26. 删除排序数组中的重复项
第一题给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组。说明: 初始化 nums1 和 nums2 的元素数量分别为 m 和 n。 你可以假设 nums1 有足够的空间(空间大小大于或等于 m + n)来保存 nums2 中的元素。示例:输入:nums1 = [1,2,3,0,...原创 2020-02-23 15:45:03 · 528 阅读 · 0 评论