标签:
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.
这道题也很简单,个人认为,特别是因为只是要求remove,对order的顺序也没有改变(当然了如果愿意还是尽量可以不改变顺序)。可以用个简单的two pointer来解决。一个int用来loop,另一个int则是用来排序剩下的integer。
public class Solution { public int removeElement(int[] nums, int val) { int a = 0; int b = 0; if (nums.length==0){ return 0; } while( b<nums.length ) { if ( nums[b]!=val ) { nums[a] = nums[b]; a++; } b++; } return a; } }
标签:
原文地址:http://www.cnblogs.com/orangeme404/p/4723336.html