删除排序数组中的重复数字
2015-06-17 18:05
351 查看
4000
给定一个排序数组,在原数组中删除重复出现的数字,使得每个元素只出现一次,并且返回新的数组的长度。
不要使用额外的数组空间,必须在原地没有额外空间的条件下完成。
样例
给出数组A
=[1,1,2],你的函数应该返回长度2,此时A=[1,2]。
class Solution {
public:
/**
* @param A: a list of integers
* @return : return an integer
*/
int removeDuplicates(vector<int> &nums) {
int n=nums.size();
if(n==0)
return 0;
int count=1;
for(int i=1;i<n;i++)
{
if(nums[i]==nums[i-1])
continue;
else
{
nums[count]=nums[i];
count++;
}
}
return count;
}
};
不要使用额外的数组空间,必须在原地没有额外空间的条件下完成。
样例
给出数组A
=[1,1,2],你的函数应该返回长度2,此时A=[1,2]。
class Solution {
public:
/**
* @param A: a list of integers
* @return : return an integer
*/
int removeDuplicates(vector<int> &nums) {
int n=nums.size();
if(n==0)
return 0;
int count=1;
for(int i=1;i<n;i++)
{
if(nums[i]==nums[i-1])
continue;
else
{
nums[count]=nums[i];
count++;
}
}
return count;
}
};
相关文章推荐
- XML包使用
- 八皇后问题python实现
- Android 实现纵向浏览的ViewPager
- 平衡二叉树算法详解
- PG学习记录
- SqlServer 禁止架构更改的复制中手动修复使发布和订阅中分别增加的字段同步
- 长按桌面进入小部件,选择“设置快捷方式”里任意一个添加到桌面,在设置中将语音设置为英语,添加的快捷方式依然是中文
- 简单Liunx线程池
- 挑战面试编程:左移字符串
- 【BZOJ】【4146】 【AMPPZ2014】Divisors
- 经验分享:大学生研究生如何找到一份数据挖掘的工作
- 贪吃蛇(修改Ⅰ版)
- ${pageContext.request.contextPath} :JSP取得绝对路径方法
- UVA-1588 Kickdown
- Android开发系列(十一):对手机通讯录的读取、添加、删除、查找
- Unity协程(Coroutine)原理深入剖析
- 【重磅】大众点评运维架构图文详解 @马哥教育联合创始人张冠宇
- erlang创建进程
- 二叉树先序、中序、后序遍历的非递归实现
- 高并发外部JS的阻塞下载