【Leetcode】Remove Element #27
来源:互联网 发布:德州扑克入门知乎 编辑:程序博客网 时间:2024/05/29 17:17
Given an array and a value, remove all instances of that value in place and return the new length.
The order of elements can be changed. It doesn't matter what you leave beyond the new length.
题目很简单,类似于简化版的quick sort split。以一个index作为查询,以一个index作为新的vector的end即可。
class Solution {public: int removeElement(vector<int>& nums, int val) { int currentEnd = 0; for (int i = 0; i < nums.size(); ++i) { if (nums[i] == val) continue; else { if (currentEnd != i) { swap(nums[currentEnd], nums[i]); } currentEnd++; } } return currentEnd; }private: void spap(int &a, int &b) { int temp = a; a= b; b = temp; }};
附贴一个quicksort中用的split,假设以第一个element作为split key
void split(vector<int> &input) { int end = 0; int index = input[0]; for (int i = 0; i < input.size(); ++i) { if(input[i] <= index){ swap(input[i],input[end]); end++; } } if (end != 0) swap(input[0],input[end-1]);}
0 0
- LeetCode(27)Remove Element
- [leetcode 27] Remove Element
- [leetcode 27] Remove Element
- [Leetcode] 27 - Remove Element
- leetcode|27|Remove Element
- LeetCode | #27 Remove Element
- LeetCode 27 : Remove Element
- LeetCode 27 Remove Element
- leetcode-27 Remove Element
- leetcode 27 Remove Element
- LeetCode 27 Remove Element
- LeetCode 27 Remove Element
- leetcode-27 Remove Element
- #27 Remove Element leetcode
- LeetCode---(27) Remove Element
- Leetcode 27 Remove Element
- LeetCode 27 - Remove Element
- LeetCode 27:Remove Element
- A Simple Problem with Integers
- “秋老虎”肆虐 要做到四个“当心”
- apache24设置虚拟目录 (windows)
- 列表,添加, 删除简单处理
- [Leetcode 6] ZigZag问题的一种新思路
- 【Leetcode】Remove Element #27
- Volley详解(五)——网络(Network)
- 迪杰斯特拉/dijkstra 算法模板(详细注释)
- 用Python读写Excel文件
- Hdu 5391
- 【C语言】第一篇·C语言概述和数据类型
- 【C语言】第二篇·输入输出和运算符
- 【C语言】第三篇·基本程序结构
- 【C语言】第四篇·函数调用