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

电商网站制作设计推广手段

电商网站制作设计,推广手段,深圳建网站培训机构,如何制作手机网页最简单的方法题目描述: 给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。 不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。 元素的顺序可以改变。你不需要考虑…

题目描述: 

给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。

不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组

元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。

说明:

为什么返回数值是整数,但输出的答案是数组呢?

请注意,输入数组是以「引用」方式传递的,这意味着在函数里修改输入数组对于调用者是可见的。

你可以想象内部操作如下:

// nums 是以“引用”方式传递的。也就是说,不对实参作任何拷贝
int len = removeElement(nums, val);// 在函数里修改输入数组对于调用者是可见的。
// 根据你的函数返回的长度, 它会打印出数组中 该长度范围内 的所有元素。
for (int i = 0; i < len; i++) {print(nums[i]);
}

示例 1:

输入:nums = [3,2,2,3], val = 3
输出:2, nums = [2,2]
解释:函数应该返回新的长度 2, 并且 nums 中的前两个元素均为 2。你不需要考虑数组中超出新长度后面的元素。例如,函数返回的新长度为 2 ,而 nums = [2,2,3,3] 或 nums = [2,2,0,0],也会被视作正确答案。

示例 2:

输入:nums = [0,1,2,2,3,0,4,2], val = 2
输出:5, nums = [0,1,3,0,4]
解释:函数应该返回新的长度 5, 并且 nums 中的前五个元素为 0, 1, 3, 0, 4。注意这五个元素可为任意顺序。你不需要考虑数组中超出新长度后面的元素。

解题方法: 

先设定变量 y,指向待插入位置。y初始值为 0

然后从题目的「要求/保留逻辑」出发,来决定当遍历到任意元素 x 时,应该做何种决策:

如果当前元素 x 与移除元素 val 相同,那么跳过该元素。
如果当前元素 x 与移除元素 val 不同,那么我们将其放到下标y 的位置,并让 y自增右移。
最终得到的 y 即是答案。

代码:

class Solution {
public:int removeElement(vector<int>& nums, int val) {int y = 0;for(auto x : nums)if(x != val) nums[y++] = x;return y;}
};

http://www.dinnco.com/news/20977.html

相关文章:

  • wordpress建站 防攻击福州网seo
  • 建一个网站首先要怎么做进入百度官网
  • ui设计培训哪家好汕头seo管理
  • 做ppt找图片的网站有哪些seo企业优化顾问
  • wordpress feedseo常规优化
  • 网站策划书格式及范文百度发布
  • 网页设计软件html优化系统的软件
  • 贸易网站建设公司上海seo招聘
  • 上海浦东做网站公司网店代运营
  • 做网站的5要素seo的基本步骤是什么
  • 360老是提示危险网站百度加盟
  • 怎么做动态网站谷歌seo工具
  • 滚动网站模版百度搜索排名购买
  • 镇平建设局网站百度网站排名优化价格
  • xampp 做网站在线seo工具
  • 诸城网站建设定制广州新闻头条最新消息
  • 建设网站英语南宁网站优化
  • 郑州富士康暴雨搜索引擎优化的基本方法
  • 苏州营销型网站建设域名年龄对seo的影响
  • 装修设计网站有哪些北京百度seo排名公司
  • 青海公安网站建设网站搭建模板
  • 廊坊网站建设制作关键词优化价格
  • 一级a做爰片不卡免费网站最新疫情新闻100字
  • 婚恋网站怎么做培训seo
  • 日本樱花服务器正品搜外seo
  • wordpress xmlrpc攻击搜狗seo优化
  • 做化妆品的网站常用的seo工具的是有哪些
  • 做门户论坛与网站的区别大连seo顾问
  • 文具网站建设规划书网络推广渠道和方式
  • 影视视频网站怎么做公司网站怎么做