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

做任务兼职赚钱的网站有哪些网站建设忘记密码邮箱设置

做任务兼职赚钱的网站有哪些,网站建设忘记密码邮箱设置,品牌建设网站公司,商城网站开发方案26.删除重复元素 题目描述 给你一个 非严格递增排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。然后返回 nums 中唯一元素的个数。 考虑 nums 的唯一元…

26.删除重复元素

题目描述

给你一个 非严格递增排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。然后返回 nums 中唯一元素的个数。

考虑 nums 的唯一元素的数量为 k ,你需要做以下事情确保你的题解可以被通过:

  • 更改数组 nums ,使 nums 的前 k 个元素包含唯一元素,并按照它们最初在 nums 中出现的顺序排列。nums 的其余元素与
  • nums 的大小不重要。 返回 k 。

解题思路

  1. 这类题目要学会不要第一时间想到for循环,而是尝试使用双指针的方式。双指针的关键就是确定两个指针移动的时机。根据不同的移动时机和方向,双指针可以分为快慢指针,碰撞指针以及滑动窗口。
  2. 在本题中,定义双指针p和q,p指向最终数组的最后一个元素的下一个位置【要确保p之前的元素没有重复】,而q向后移动,遇到不重复元素,则将其添加到p指针位置。

理清思路就可以明确p,q两个指针的移动时机:

  • 当q指向无重复元素时,将该元素移动至p指针位置,然后p向后移动一位
  • q指针每一轮向后移动一位
  • 这种移动方式的双指针称为快慢指针。其中p为慢指针,q为快指针。

代码

class Solution {public int removeDuplicates(int[] nums) {// 初始化int n = nums.length;if (n == 0) {return 0;}// 核心算法int fast = 1, slow = 1;while (fast < n) {if (nums[fast] != nums[fast - 1]) {// 当快指针遇到了不重复元素时,将该元素放到慢指针的位置nums[slow] = nums[fast];// 慢指针向后移动一位++slow;}// 每一轮,快指针都向后移动一位++fast;}// 返回return slow;}
}

27.移除元素

题目描述

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

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

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

解题思路

这题依旧是使用快慢指针。思路如下:
定义快慢指针都指向第一个元素,然后快指针开始遍历数组。若快指针指向的元素不等于val,那么将该元素放到慢指针所指向的位置,然后慢指针才向后移动一步。
理清思路后,明确快慢指针的移动时机:

  • 快指针遍历数组,每一轮都向后移动一位
  • 当快指针指向的元素不等于val时,将快指针指向元素放到慢指针处,慢指针向后移动一位

代码

class Solution {public int removeElement(int[] nums, int val) {int n = nums.length;// 定义慢指针int slow = 0;// 快指针遍历数组for (int fast= 0; fast< n; fast++) {if (nums[fast] != val) {// 若快指针指向的元素不等于val,则将快指针的元素放到慢指针处nums[slow] = nums[fast];// 这种情况下,慢指针移动一步。slow++;}}return slow;}
}
http://www.yayakq.cn/news/298293/

相关文章:

  • 镇江网站制作企业网站建设银行网站银行登录
  • 腾和企业网站 优帮云中国联通网站备案管理系统
  • 企业网站素材图片怎样装修公司网站
  • 做网站我网站找第三方支付河北网站建设模板
  • 万网网站流量新网站先做外链还是内容
  • 有意思网站推荐东莞互联网大公司有哪些
  • 广州建设银行官方网站网站收录大量下降
  • 网站悬浮二维码emlog 转wordpress
  • 做网站用什么样的电脑网站诊断报告案例
  • 网站建设电话营销培训ppt课件网站运营推广方案
  • 生产型或服务型企业网站有哪些品牌设计公司 知乎
  • 中国联通网站备案兰州小的网络公司
  • 深圳seo网站推广报价深圳涂料网站建设
  • 如果做国外网站导购开源的网站建设平台
  • 网站分页样式wordpress 培训
  • 建设机械网站精英上海网站建设招标
  • 宿迁市建设局投诉网站首页鄂州网格员招聘
  • 云南网站建设运营google高级搜索
  • 美食网站开发济南市建设工程交易网
  • 怎么制作网站镜像台州网站制作推广
  • 惠州市建设规划局网站淘宝客网站开发视频教程
  • 集成微信的企业网站管理系统网站主页制作教程
  • 做白酒的网站哪家公司因为做网站失败了
  • h5网站建设+北京模板网站建设咨询
  • 单位网站建设实施方案宁波建网站费用
  • ftp 网站做设计拍摄的网站平台
  • 义乌网站建设微信开发海南省澄迈住房和城乡建设厅网站
  • 淮安市建设工程质量监督站网站网站忘记密码功能
  • 武乡网站建设注册logo商标设计要求
  • 在哪里建网站许昌网络推广外包