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

呼伦贝尔市建设网站广州网站建设与实验

呼伦贝尔市建设网站,广州网站建设与实验,免费微信建站有哪些网站,自己做网站后台从0开始的秋招刷题路#xff0c;记录下所刷每道题的题解#xff0c;帮助自己回顾总结 80. 删除有序数组中的重复项 II 给你一个有序数组 nums #xff0c;请你 原地 删除重复出现的元素#xff0c;使得出现次数超过两次的元素只出现两次 #xff0c;返回删除后数组的新长…从0开始的秋招刷题路记录下所刷每道题的题解帮助自己回顾总结 80. 删除有序数组中的重复项 II 给你一个有序数组 nums 请你 原地 删除重复出现的元素使得出现次数超过两次的元素只出现两次 返回删除后数组的新长度。 不要使用额外的数组空间你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。 说明 为什么返回数值是整数但输出的答案是数组呢 请注意输入数组是以「引用」方式传递的这意味着在函数里修改输入数组对于调用者是可见的。 你可以想象内部操作如下: // nums 是以“引用”方式传递的。也就是说不对实参做任何拷贝 int len removeDuplicates(nums); // 在函数里修改输入数组对于调用者是可见的。 // 根据你的函数返回的长度, 它会打印出数组中 该长度范围内 的所有元素。 for (int i 0; i len; i) { print(nums[i]); } 示例 1 输入nums [1,1,1,2,2,3] 输出5, nums [1,1,2,2,3] 解释函数应返回新长度 length 5, 并且原数组的前五个元素被修改为 1, 1, 2, 2, 3 。 不需要考虑数组中超出新长度后面的元素。 示例 2 输入nums [0,0,1,1,1,1,2,3,3] 输出7, nums [0,0,1,1,2,3,3] 解释函数应返回新长度 length 7, 并且原数组的前五个元素被修改为 0, 0, 1, 1, 2, 3, 3 。 不需要考虑数组中超出新长度后面的元素。 提示 1 nums.length 3 * 10410^4104 -10410^4104 nums[i] 10410^4104 nums 已按升序排列 解题思路 一个指针 i 用来遍历 nums 数组另一个指针 index 始终指向有效数组的末尾。 当前位置上的元素与其前一个元素不相等时即 nums[i - 1] ! nums[i]进行覆盖并将当前位置的元素 nums[i]放到有效数组中最后的位置并令 count 值重新为 1因为出现了新的元素并且该元素是第一次出现即 nums[index] nums[i] 当相邻位置相等且 count 2 时由于题中说到每个元素最多出现两次所以该元素还可以出现一次则将当前位置上的元素放到有效数组中的最后位置并令记录该元素的出现次数即 count 当相邻位置相等且 count 2 时说明当前值的元素已经出现连续两个相同的了则不需要进行任何操作直接 continue 即可。 直到遍历结束最后返回有效数组的长度 index 即可。 示例[1,1,1,2,2,3]其中有效数组长度初始为 index 1. i 1nums[0] nums[1] 且 count 1则 nums[1] nums[1]count 2index 2 i 2nums[1] nums[2] 且 count 2直接跳过不进行任何处理 i 3nums[2] ! nums[3] 则 nums[2] nums[3]count 1index 3 i 4nums[3] nums[4] 且 count 1则 nums[3] nums[4]count 2index 4 i 5nums[4] ! nums[5] 则 nums[4] nums[5]count 1index 5 最终返回index 5有效数组为 [1, 1, 2, 2, 3] 注意题中说到的每个元素最多出现两次可以将两次改为 k 次此时只需要将第二个判断中的 count 2 修改为 count k 即可。 代码 class Solution {public int removeDuplicates(int[] nums) {int n nums.length;if (n 2) return n;int count 1;int index 1;for (int i1;in;i) {if (nums[i] ! nums[i - 1]) {nums[index] nums[i];count 1;} else if (count 2) { // 两个元素值相等并且之前没有重复nums[index] nums[i];count;} else {continue;}}return index;} }时间复杂度O(n) 空间复杂度O(1)
http://www.dnsts.com.cn/news/136023.html

相关文章:

  • 网站底部加备案号如何用dede做带下单的网站
  • 营销型外贸网站建设泉州网站建设公司首选公司哪家好
  • 网站开发的原理做百度企业网站有什么好处
  • 网站推他网站网站怎么做可以被收录
  • 网站建设技术jsp课程设计天元建设集团有限公司商票
  • 单页网站源码东莞住建局
  • 陕西省住房和城乡建设厅网站上查询网站视频站建设教程和
  • 网站排名查询软件alexa如何开发安卓app
  • 淘宝客怎么做推广深圳网站建设方案优化
  • 网站托管服务 优帮云创意旅行社wordpress
  • 后台给网站做关键字dw软件做二级连接网站
  • 淘宝客建网站怎么做给大家分享个永久免费的云服务器
  • 2016响应式网站模板网页设计与制作教程第五版课后答案
  • 黄冈网站建设与推广哪家好网站开发页面大小适应屏幕
  • 有了网站怎么写文章广东网站备案要求
  • 网络科技网站把做的网站发布打万维网上
  • 怎么做系统软件网站没有域名怎么访问网站
  • 靖江建设行业协会网站国外做的好的电商网站推荐
  • wordpress做自建站wordpress主题修改教程
  • 手机版网站推荐昆明网站建设yn119
  • 邱县网站建设潍坊网站关键字优化
  • 莱芜区组织部网站免费网站建设社区
  • ppt做的好的有哪些网站有哪些阿里云免费空间
  • 电子商务网站建设财务分析应用公园app的功能介绍
  • 兰州需要做网站的公司有哪些黄南州wap网站建设公司
  • 个人网站备案要求北京网站seo排名优化
  • 自己搭建服务器访问国外网站网页的制作公司
  • 科技公司网站设计公司获取网站服务器信息
  • 太和县住房和城乡建设局网站滕州网站优化
  • 代刷网站只做软件摄影集 wordpress