一题目描述:
给定一个数组,只有一个数字出现一次,其余都是两次,判断那个数字
思路:
- 不断取出数据进行异或,最后一个数字,因为相同的数字会抵消
代码:
public class Solution {public int singleNumber(int[] nums) {int left = nums[0]; for(int i =1; i< nums.length; i++) { left = left ^ nums[i]; } return left; }
}
更多leetcode题目,请看我的leetcode专栏。链接如下:
leetcode专栏
我的微信二维码如下,欢迎交流讨论
欢迎关注《IT面试题汇总》微信订阅号。每天推送经典面试题和面试心得技巧,都是干货!
微信订阅号二维码如下:
<script type="text/javascript"> $(function () { $('pre.prettyprint code').each(function () { var lines = $(this).text().split('\n').length; var $numbering = $('<ul/>').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i <= lines; i++) { $numbering.append($('<li/>').text(i)); }; $numbering.fadeIn(1700); }); }); </script>