删除元素
来源:互联网 发布:vss软件保护 编辑:程序博客网 时间:2024/05/01 00:51
描述
给定一个数组和一个值,在原地删除与值相同的数字,返回新数组的长度。
元素的顺序可以改变,并且对新的数组不会有影响。
样例
给出一个数组 [0,4,4,0,0,2,4,4],和值 4
返回 4 并且4个元素的新数组为[0,0,0,2]
思考
- 原先以为是将 [0, 1, 1, 2, 2] -> [0, 2 , 2] ;
- 实际上题目的是 [0, 1, 1, 2, 2] -> [0, 2, 2, 1, 1],并不要求删除原先的数字,只需要对前面的数字进行覆盖就好
代码
// By Lentitude// 第一种情况代码class Solution {public: /** *@param A: A list of integers *@param elem: An integer *@return: The new length after remove */ int removeElement(vector<int> &A, int elem) { // write your code here if (A.empty()) return 0; for (int i = 0; i != A.size(); ++i){ while (A[i] == elem){ A.erase(A.begin() + i); } } return A.size(); }};
// By Lentitude// 第二种情况代码class Solution {public: /** *@param A: A list of integers *@param elem: An integer *@return: The new length after remove */ int removeElement(vector<int> &A, int elem) { // write your code here int i = 0, j = 0; int len = A.size(); int ret = 0; while(j < len){ if(A[j] != elem){ ++ret; A[i]=A[j]; ++i; } ++j; } return ret; }};
0 0
- 删除元素.
- 删除元素
- 删除元素
- 删除元素
- 删除元素
- 删除元素
- 删除元素
- 删除元素
- 删除元素
- 删除元素
- 删除元素
- 删除元素
- 元素删除
- 创建元素和删除元素
- 删除数组元素.
- c++ vector删除元素
- 通过reverse_iterator删除元素
- js 删除数组元素。
- [BZOJ]4547: Hdu5171 小奇的集合 矩阵乘法
- android自动化测试Uiautomator源码分析之一
- [BZOJ 4813][Cqoi2017]小Q的棋盘:TreeDP
- MySQL之GTID简介
- swustojRenting Boats(0574)
- 删除元素
- 《统计学习方法》——感知器的原理和python实现
- WebJars——web端静态资源的jar包
- Android——requestWindowFeature()的应用
- 170414 PY中显示JS
- MySQL之GTID主从同步
- 1090. Highest Price in Supply Chain (25)
- 通过工厂模式和配置文件方式结合模拟框架的配置
- http的简介