当前位置: 首页 > news >正文

常州行业网站制作杭州seo泽成

常州行业网站制作,杭州seo泽成,wordpress说说功能,做网站对外贸有什么用1 题目描述 图1 题目描述 2 题目解读 对于有序数组nums,要求在不使用额外数组空间的条件下,删除数组nums中重复出现的元素,使得nums中出现次数超过两次的元素只出现两次。返回删除后数组的新长度。 3 解法一:双指针 双指针法可以…

1 题目描述

图1 题目描述

2 题目解读

        对于有序数组nums,要求在不使用额外数组空间的条件下,删除数组nums中重复出现的元素,使得nums中出现次数超过两次的元素只出现两次。返回删除后数组的新长度。

3 解法一:双指针

        双指针法可以很好地解决此题。

3.1 解题思路

        设置双指针,从数组nums的第3个元素开始比较,直到nums的最后一个元素。

3.2 设计代码

#include <iostream>
#include <vector>
using namespace std;
class Solution {
public:int removeDuplicates(vector<int>& nums) {int n = nums.size();if (n <= 2) {return n;}int slow = 2, fast = 2;while (fast < n) {if (nums[slow - 2] != nums[fast]) {nums[slow] = nums[fast];++slow;}++fast;}return slow;}
};
int main() {int x[] = { 1,1,1,2,2,3 };vector<int> nums;for (int i = 0; i < 6; i++){nums.push_back(x[i]);}Solution S;int ans = S.removeDuplicates(nums);cout << ans << endl;return 0;
}

3.3 复杂度分析

  • 时间复杂度:O(n)。while循环遍历了一遍数组元素。
  • 空间复杂度:O(1)。没有使用额外数组空间。

3.4 提交结果

图2 双指针法代码执行结果

4 解法二:前移法

        前移法是由双指针法扩展出来的一种方法,与双指针法有着相似的思想。

4.1 解题思路

        设置指针right,从数组nums的第3个元素开始遍历,使用变量k记录需要移除的元素的个数,将需要移动的元素前移k个位置。

4.2 设计代码

#include <iostream>
#include <vector>
using namespace std;
class Solution {
public:int removeDuplicates(vector<int>& nums) {int n = nums.size();if (n <= 2) {return n;}// k累计删除的元素个数int fast = 2, k = 0;while (fast < n) {if (nums[fast - k - 2] != nums[fast]) {nums[fast - k] = nums[fast];}else {++k;}++fast;}return fast - k;}
};
int main() {int x[] = { 1,1,1,2,2,3 };vector<int> nums;for (int i = 0; i < 6; i++){nums.push_back(x[i]);}Solution S;int ans = S.removeDuplicates(nums);cout << ans << endl;return 0;
}

4.3 复杂度分析

  • 时间复杂度:O(n)。while循环遍历了一遍数组nums的元素。
  • 空间复杂度:O(1)。没有使用额外数组空间。

4.4 提交结果

图3 前移法代码执行结果

5 解题心得

  • 让有序数组nums中重复出现的元素只出现两次,是让其只出现一次的变体题目,难度更大。
  • 双指针法与前移法之间,可以相互转换。
  • 双指针法中,left指针用于放置新元素。
http://www.yidumall.com/news/91204.html

相关文章:

  • 文章采集上传wordpress搜索引擎优化是指什么
  • 做公司网站 烟台专业网络推广公司排名
  • 海外代购网站怎么做代运营一般收费
  • php做网站搜索框湖南长沙seo
  • 杭州网站建设朗诵面朝抖音seo是什么意思
  • wordpress文章无法中文版外贸seo建站
  • 企业名录搜索软件下载上海有哪些优化网站推广公司
  • 成都网站设计的公司百度竞价推广登录
  • 如何做属于自己的网站搜索引擎调价平台哪个好
  • 京东的网络营销策略好搜seo软件
  • wordpress最大负载青岛神马排名优化
  • 优化网站具体如何做最近一周的国内新闻
  • 网络信息安全工程师seo云优化方法
  • 找人建站做网站需要注意什么问题seo思维
  • 创新的沈阳网站建设外包公司为什么没人去
  • 做煤层气的网站大数据营销软件
  • 怎么做盗版电影网站百度搜索优化建议
  • 中国建筑人才网简介关于seo的行业岗位有哪些
  • 张店网站开发招聘常见的营销型网站
  • 建设网站商城需要多少费用吗引擎搜索器
  • 哪个网站做外链视频好seo搜索引擎优化排名
  • 多种网站建设新闻发稿公司
  • 嵊州建设银行取款网站能搜任何网站的浏览器
  • 免费做外贸的网站建设宁波seo整体优化
  • 做seo为什么要了解网站手机seo关键词优化
  • 网站首页banner图蜂蜜网络营销推广方案
  • 哪个网站是教人做淘宝客的b2b电子商务平台排名
  • 专业建站公司设计方案台州seo优化
  • 官方网站下载安装qq百度搜索引擎首页
  • 国内做网站哪家好百度识图扫一扫入口