算法题出处:LeetCode

q:给定一个有序数组,你需要原地删除其中的重复内容,使每个元素只出现一次,并返回新的长度。
不要另外定义一个数组,您必须通过用 O(1) 额外内存原地修改输入的数组来做到这一点。

给定数组: nums = [1,1,2],

你的函数应该返回新长度 2, 并且原数组nums的前两个元素必须是1和2
不需要理会新的数组长度后面的元素
/**
 * @param {number[]} nums
 * @return {number}
 */
var nums = [1,1,2];
var removeDuplicates = function(nums) {
    var len = nums.length;
	for(var i = 0;i < len;i ++){
		var j = i + 1;
		while(j < len){
			if(nums[i] == nums[j]){
				nums.splice(j,1);
				len --;
				i--;
			}
			j++;
		}
	}
	return nums.length;
};

console.log(removeDuplicates(nums));
console.log(nums);

个人笔记