
LeetCode刷题
文章平均质量分 86
青枫。
一步一个脚印!自律总没坏处!
展开
-
【LeetCode刷题】167.两数之和 II - 输入有序数组
目录题目:167.两数之和 II - 输入有序数组示例:解题思路代码(Python)代码(Python)总结后续 题目:167.两数之和 II - 输入有序数组 给定一个已按照升序排列 的有序数组,找到两个数使得它们相加之和等于目标数。 函数应该返回这两个下标值 index1 和 index2,其中 index1 必须小于 index2。 说明: 返回的下标值(index1 和 index2)不是从零开始的。 你可以假设每个输入只对应唯一的答案,而且你不可以重复使用相同的元素。 示例: 输入: numb原创 2020-05-28 08:54:59 · 298 阅读 · 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 · 250 阅读 · 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 · 237 阅读 · 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 · 431 阅读 · 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 · 155 阅读 · 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 · 254 阅读 · 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 · 319 阅读 · 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 · 296 阅读 · 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 · 228 阅读 · 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 · 463 阅读 · 0 评论