leecode 137. Single Number II

原创 2016年08月29日 15:29:14

题意:给定一个数组,数组中存放多个三个数相同的数,其中一个数只有一个,例如这种的{1,2,2,2,3,3,3}。

解题思路:将数组排序后能够变成{1,2,2,2,3,3,3}这种形式,我设定一个数字k,用做基数的作用,当k%3==0,表示前3、6、9...等没有单独一个数字的。重点就是考虑最后一个数字是唯一的情况。具体的说明代码里面,给你点想象的空间。


	public int singleNumber(int[] nums) {
		if (nums.length <= 3)
			return 1;
		Arrays.sort(nums);
		int result = 0;
		int inter = nums[0];
		int k = 1;
		for (int i = 1; i < nums.length; i++) {
			if (inter == nums[i]) {
				k++;
			} else {
				if (k % 3 != 0) {
					result = i - 1;
					break;
				} else {
					k++;
					inter = nums[i];
				}
			}
		}
		// 最后一个数字是唯一的
		if (result == 0 && k != 1)
			return nums[nums.length - 1];
		return nums[result];
	}


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

LeetCode(137) Single Number II

题目Given an array of integers, every element appears three times except for one. Find that single one...
  • fly_yr
  • fly_yr
  • 2015年10月22日 13:19
  • 295

【LeetCode】137. Single Number II

137. Single Number II Given an array of integers, every element appears three times except for one...

137. Single Number II

Given an array of integers, every element appears three times except for one. Find that single one. ...

Leetcode 137. Single Number II

题意:给定一个数组,已知这个数组中有一个数出现了一次,其它数都出现三次。找出这个数 解法: 有个很好理解的解法,因为int有32位,所以开一个数组bit[32],遍历32次,把每个位出现的次数分别...

leetcode[137]:Single Number II

Single Number IIGiven an array of integers, every element appears three times except for one. Find t...

Leetcode 137 Single Number II 仅出现一次的数字

给出一个整数数组,除了某个元素外所有元素都出现三次。找出仅出现一次的数字。...

leetcode-137 Single Number II

思路一: 对于除出现一次之外的所有的整数,其二进制表示中每一位1出现的次数是3的整数倍,将所有这些1清零,剩下的就是最终的数。用ones记录到当前计算的变量为止,二进制1出现“1次”(mod 3...
  • sole_cc
  • sole_cc
  • 2015年03月03日 11:14
  • 387

<LeetCode OJ> 136 / 137 / 260 Single Number(I / II / III)

260. Single Number III My Submissions Question Total Accepted: 19802 Total Submissions: 47891 Di...

leetcode137 Single Number II

题目: Given an array of integers, every element appears three times except for one. Find that single...

137. Single Number II\393. UTF-8 Validation\547. Friend Circles

Single Number II DESCRIPTION IMPLEMENTATION UTF-8 Validation DESCRIPTION IMPLEMENTATION137. Single N...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:leecode 137. Single Number II
举报原因:
原因补充:

(最多只允许输入30个字)