leetcode之删除有序数组中的重复项(C++)
2021/4/18 20:28:07
本文主要是介绍leetcode之删除有序数组中的重复项(C++),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
参考链接
- https://leetcode-cn.com/problems/remove-duplicates-from-sorted-array/
题目描述
给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。
不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。
解题思路
使用双指针,一个指针锁定要被替换的位置,另一个指针寻找不同的元素,放在第一个指针右边的位置。
代码
class Solution { public: int removeDuplicates(vector<int>& nums) { int len = 0; int i = 0; int j = 0; for (i = 0, j = i + 1; ; j ++) { if (j >= nums.size()) { break; } if (nums[i] != nums[j]) { nums[i + 1] = nums[j]; i ++; } } len = nums.size() < i + 1 ? nums.size() : i + 1; return len; } };
这篇关于leetcode之删除有序数组中的重复项(C++)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-06-26小白家庭 nas 搭建方案-icode9专业技术文章分享
- 2024-06-23AI大模型企业应用实战(14)-langchain的Embedding
- 2024-06-23AI大模型企业应用实战(15)-langchain核心组件
- 2024-06-23AI大模型企业应用实战(16)-langchain核心组件
- 2024-06-23AI 大模型企业应用实战(06)-初识LangChain
- 2024-06-19EntBot.ai: AI Website Chatbot for Product Guides and Development Doc
- 2024-06-17zero-shot-learning-definition-examples-comparison
- 2024-06-06Package Easy(基于 NSIS 的打包exe安装包工具)使用方法-icode9专业技术文章分享
- 2024-06-06基于 casdoor 的 ELK 开源登录认证解决方案: elk-auth-casdoor-icode9专业技术文章分享
- 2024-05-29Elasticsearch慢查询日志配置