LeetCode刷题
文章平均质量分 86
青枫。
一步一个脚印!自律总没坏处!
展开
-
【LeetCode刷题】167.两数之和 II - 输入有序数组
目录题目:167.两数之和 II - 输入有序数组示例:解题思路代码(Python)代码(Python)总结后续题目:167.两数之和 II - 输入有序数组给定一个已按照升序排列 的有序数组,找到两个数使得它们相加之和等于目标数。函数应该返回这两个下标值 index1 和 index2,其中 index1 必须小于 index2。说明:返回的下标值(index1 和 index2)不是从零开始的。你可以假设每个输入只对应唯一的答案,而且你不可以重复使用相同的元素。示例:输入: numb原创 2020-05-28 08:54:59 · 282 阅读 · 0 评论 -
【LeetCode刷题】18.四数之和
目录题目:18.四数之和示例:解题思路代码(Python)代码(Python)优化总结后续题目:18.四数之和给定一个包含 n 个整数的数组 nums 和一个目标值 target,判断 nums 中是否存在四个元素 a,b,c 和 d ,使得 a + b + c + d 的值与 target 相等?找出所有满足条件且不重复的四元组。注意: 答案中不可以包含重复的四元组。示例:给定数组 nums = [1, 0, -1, 0, -2, 2],和 target = 0。满足要求的四元组集合为:[原创 2020-05-26 11:27:01 · 242 阅读 · 0 评论 -
【LeetCode刷题】16.最接近的三数之和
目录题目:16. 最接近的三数之和示例:解题思路代码(Python)总结后续题目:16. 最接近的三数之和给定一个包括 n 个整数的数组 nums 和 一个目标值 target。找出 nums 中的三个整数,使得它们的和与 target 最接近。返回这三个数的和。假定每组输入只存在唯一答案。示例:例如,给定数组 nums = [-1,2,1,-4], 和 target = 1.与 target 最接近的三个数的和为 2. (-1 + 2 + 1 = 2).解题思路依旧是双指针的问题。将原创 2020-05-25 15:21:15 · 222 阅读 · 0 评论 -
【LeetCode刷题】15.三数之和(超细节)
目录题目:三数之和示例:解题思路代码(C++)代码(Python)总结后续题目:三数之和给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有满足条件且不重复的三元组。注意: 答案中不可以包含重复的三元组。示例:给定数组 nums = [-1, 0, 1, 2, -1, -4],满足要求的三元组集合为:[ [-1, 0, 1], [-1, -1, 2]]解题思路双指针法铺垫: 先将给定 n原创 2020-05-20 10:11:50 · 418 阅读 · 0 评论 -
【LeetCode刷题】54.螺旋矩阵
目录题目:螺旋矩阵示例1:示例2:解题思路代码(Python)代码(C++)题目:螺旋矩阵给定一个包含 m x n 个元素的矩阵(m 行, n 列),请按照顺时针螺旋顺序,返回矩阵中的所有元素。示例1:输入:[ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ]]输出: [1,2,3,6,9,8,7,4,5]示例2:输入:[ [1, 2, 3, 4], [5, 6, 7, 8], [9,10,11,12]]输出: [1,2,3,4,8,12原创 2020-05-19 14:48:48 · 144 阅读 · 0 评论 -
【LeetCode刷题】498.对角线遍历
目录题目:对角线遍历示例1:解题思路代码题目:对角线遍历给定一个含有 M x N 个元素的矩阵(M 行,N 列),请以对角线遍历的顺序返回这个矩阵中的所有元素,对角线遍历如下图所示。示例1:输入:[ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ]]输出: [1,2,4,7,5,3,6,8,9]解释:解题思路使用一个外层循环遍历所有的对角线。第一行和最后一列的元素都是对角线的起点。 使用一个内层 while循环遍历对角线上的所有元素。可以计算指原创 2020-05-18 17:15:02 · 247 阅读 · 0 评论 -
【LeetCode刷题】66.加一
【LeetCode刷题】加一(C++)题目:加一示例1:示例2:解题思路代码运行结果题目:加一给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。最高位数字存放在数组的首位, 数组中每个元素只存储单个数字。你可以假设除了整数 0 之外,这个整数不会以零开头。示例1:输入: [1,2,3]输出: [1,2,4]解释: 输入数组表示数字 123。示例2:输入: [4,3,2,1]输出: [4,3,2,2]解释: 输入数组表示数字 4321。解题思路数组不产生进位,直原创 2020-05-14 19:56:09 · 304 阅读 · 0 评论 -
【LeetCode刷题】747.至少是其他数字两倍的最大数
【LeetCode刷题】至少是其他数字两倍的最大数(C++)题目:至少是其他数字两倍的最大数示例1:示例2:解题思路代码运行结果题目:至少是其他数字两倍的最大数在一个给定的数组nums中,总是存在一个最大元素 。查找数组中的最大元素是否至少是数组中每个其他数字的两倍。如果是,则返回最大元素的索引,否则返回-1。示例1:输入: nums = [3, 6, 1, 0]输出: 1解释: 6是最大的整数, 对于数组中的其他整数,6大于数组中其他元素的两倍。6的索引是1, 所以我们返回1.示例2原创 2020-05-13 16:30:54 · 288 阅读 · 0 评论 -
【LeetCode刷题】1.两数之和
【LeetCode刷题】两数之和(C++)题目:两数之和【解法一】暴力解法【解法二】map题目:两数之和给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]【解法一】暴力解法clas原创 2020-05-13 10:32:07 · 223 阅读 · 0 评论 -
【LeetCode刷题】724.寻找数组的中心索引(C语言)
【LeetCode刷题-1】寻找数组的中心索引(C语言)题目:寻找数组的中心索引示例1:示例2:解题思路代码运行结果题目:寻找数组的中心索引给定一个整数类型的数组 nums,请编写一个能够返回数组“中心索引”的方法。我们是这样定义数组中心索引的:数组中心索引的左侧所有元素相加的和等于右侧所有元素相加的和。如果数组不存在中心索引,那么我们应该返回 -1。如果数组有多个中心索引,那么我们应该返回最靠近左边的那一个。示例1:输入: nums = [1, 7, 3, 6, 5, 6]输出: 3解释原创 2020-05-12 11:06:42 · 451 阅读 · 0 评论