摘要: 题目说明 给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素最多出现两次,返回移除后数组的新长度。 解法1 时间复杂度:O(n) 空间复杂度:O(1) 思路:使用双指针,第一个指针j表示调整后的数组最后一个位置,第二个指针i遍历原数组。 当nums[i]与nums[j]不等时,直接添加即 阅读全文
posted @ 2019-01-26 02:12 JESSET 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 题目说明 给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。 解法1 时间复杂度:O(n) 空间复杂度:O(1) 思路:利用数组为有序数组这一条件。使用双指针, 阅读全文
posted @ 2019-01-26 01:32 JESSET 阅读(122) 评论(0) 推荐(0) 编辑
摘要: 题目说明 给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 1。 解法1 时间复杂度:O(logn) 空间复杂度:O(1) 思路:二分查找法,在有序数组中,将整个数组的中间位置与目标值作 阅读全文
posted @ 2019-01-26 00:54 JESSET 阅读(91) 评论(0) 推荐(0) 编辑
摘要: 题目说明 给定一个包含红色、白色和蓝色,一共 n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。 此题中,我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。 解法1 时间复杂度:O(n) 空间复杂度:O(1) 思路:使用计数排序法,先遍历一遍统计出 阅读全文
posted @ 2019-01-26 00:23 JESSET 阅读(144) 评论(0) 推荐(0) 编辑