LeetCode Online Judge 题目C# 练习 - Remove Element
2012-10-12 21:40
417 查看
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.
代码分析:
这个应该是考审题,或者面试官之给你题目第一句话,让你去问他的前设条件,他再给你题目的第二句话。
应为题目说order可以变,new length以外的不管。那么就碰到 A[i] == elem, 把当前最后一个元素复制到A[i], 然后 长度 n--, i--(因为重后面复制上来的值可能会等于elem的,要重新审查一次这个 A[i]。
The order of elements can be changed. It doesn't matter what you leave beyond the new length.
public static int RemoveElemtn(int[] A, int n, int elem) { for (int i = 0; i < n; i++) { if (A[i] == elem) { A[i] = A[n - 1]; n--; i--; } } return n; }
代码分析:
这个应该是考审题,或者面试官之给你题目第一句话,让你去问他的前设条件,他再给你题目的第二句话。
应为题目说order可以变,new length以外的不管。那么就碰到 A[i] == elem, 把当前最后一个元素复制到A[i], 然后 长度 n--, i--(因为重后面复制上来的值可能会等于elem的,要重新审查一次这个 A[i]。
相关文章推荐
- LeetCode Online Judge 题目C# 练习 - Implement strStr()
- LeetCode Online Judge 题目C# 练习 - Reverse Nodes in k-Group
- LeetCode Online Judge 题目C# 练习 - Longest Substring Without Repeating Characters
- LeetCode Online Judge 题目C# 练习 - Add two number
- LeetCode Online Judge 题目C# 练习 - 4SUM
- LeetCode Online Judge 题目C# 练习 - Binary Tree Level Order Traversal II
- LeetCode Online Judge 题目C# 练习 - Combination
- LeetCode Online Judge 题目C# 练习 - N-Queens
- LeetCode Online Judge 题目C# 练习 - Length of Last Word
- LeetCode Online Judge 题目C# 练习 - Add Binary
- LeetCode Online Judge 题目C# 练习 - Two Sum
- LeetCode Online Judge 题目C# 练习 - Count and Say
- LeetCode Online Judge 题目C# 练习 - Minimum Window Substring
- LeetCode Online Judge 题目C# 练习 - Decode Way
- LeetCode Online Judge 题目C# 练习 - Search Insert Position
- LeetCode Online Judge 题目C# 练习 - Plus One
- LeetCode Online Judge 题目C# 练习 - Set Matrix Zeroes
- LeetCode Online Judge 题目C# 练习 - Unique Binary Search Trees II
- LeetCode Online Judge 题目C# 练习 - Divid Two Integer
- LeetCode Online Judge 题目C# 练习 - Climbing Stairs