![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Array
文章平均质量分 60
Array
张可盐
张得可盐,还得嗑盐
展开
-
leetcode_481_神奇字符串
神奇字符串 s 仅由 ‘1’ 和 ‘212给你一个整数 n ,返回在神奇字符串 s 的前 n 个数字中 1 的数目。输入:n = 6输出:3解释:神奇字符串 s 的前 6 个元素是 “122112”,它包含三个 1,因此返回 3。原创 2022-10-31 21:01:48 · 133 阅读 · 0 评论 -
leetcode开门见山第一题两数之和
题目大意给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出和为目标值 target 的那两个 整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。思路分析由题目中的有唯一的一个答案使得题目难度降低了。值得注意的是答案中不允许出现同一元素,也就是说,一个元素只能使用一次来构建target,在测试用例中有所体现。暴力破解双层循环返回符合nums[i] + nums[j] = targe原创 2022-01-12 17:22:23 · 3574 阅读 · 0 评论 -
leetcode_26_删除有序数组中的重复项
题目大意删除有序数组中的重复项给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。输入:nums = [0,0,1,1,1,2,2,3,3,4]输出:5, nums = [0,1,2,3,4]解释:函数应该返回新的长度 5 , 并且原数组 nums 的前五个元素被修改为 0, 1, 2, 3, 4 。不需要考虑数组中超出新长度后面的元素。原创 2022-01-16 13:43:08 · 496 阅读 · 0 评论 -
leetcode_35_搜索插入位置
题目大意搜索插入位置给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。请必须使用时间复杂度为 O(log n) 的算法。nums 为无重复元素的升序排列数组思路分析看到nums是一个有序的数组和O(log n)的算法可以想到是二分查找,毕竟有序是二分查找的前提。不重复说明返回值唯一。我觉得唯一的难点在于边界值得处理上:一开始设置的的hight = nums.length , 出现了越界的错误,调整到nums.length-原创 2022-01-17 18:21:16 · 245 阅读 · 0 评论 -
leetcode_53_最大子数组和
题目大意最大子数组和给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。子数组是数组中的一个连续部分。进阶:如果你已经实现复杂度为 O(n) 的解法,尝试使用更为精妙的分治法求解。思路分析这道题是一个非常经典的动态规划问题。该问题最早于 1977 年提出,但是直到 1984 年才被 Jay Kadane 发现了线性时间的最优解法。暴力破解一开始确实没什么思路,直接一点就是暴力破解么。因为返回的是数组不是子数组,相对简单,只需要比原创 2022-01-19 22:46:00 · 462 阅读 · 0 评论 -
leetcode_66_ 加一
题目大意加一给定一个由 整数 组成的 非空 数组所表示的非负整数,在该数的基础上加一。最高位数字存放在数组的首位, 数组中每个元素只存储单个数字。你可以假设除了整数 0 之外,这个整数不会以零开头。思路分析整个的难点就是进位的问题,也就是讨论9出现的位置当最后一位不是9时,加一返回当后几位是9,寻找中间不是9的数加一,后几位变0返回当所有数都是9时,我们只需要构造一个长度比原数组长度+1的新数组,将首元素置为 1,其余元素置为 0 即可当然也可以直接关注在加一后是否为0,代码如下代原创 2022-02-10 12:20:53 · 6467 阅读 · 0 评论