首页 > 代码库 > 136. Single Number
136. Single Number
Given an array of integers, every element appears twice except for one. Find that single one.
java(8ms):排序,然后跟相邻数字都不同的就是single one
1 public class Solution { 2 public int singleNumber(int[] nums) { 3 Arrays.sort(nums); 4 if (nums.length == 1) 5 return nums[0] ; 6 if (nums[0] != nums[1]){ 7 return nums[0] ; 8 }else if (nums[nums.length-1] != nums[nums.length-2]){ 9 return nums[nums.length-1] ; 10 } 11 for (int i = 1 ; i < nums.length-1 ; i++){ 12 if (nums[i] != nums[i-1] && nums[i] != nums[i+1]){ 13 return nums[i] ; 14 } 15 16 } 17 return 0 ; 18 } 19 }
java(1ms):相同的数异或后为0,将所有的数异或,最后剩下single one
1 public class Solution { 2 public int singleNumber(int[] nums) { 3 for (int i = 1 ; i < nums.length ; i++){ 4 nums[0] ^= nums[i] ; 5 } 6 return nums[0] ; 7 } 8 }
136. Single Number
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。