这篇“如何使用java查看只出现一次的数字”除了程序员外大部分人都不太理解,今天小编为了让大家更加理解“如何使用java查看只出现一次的数字”,给大家总结了以下内容,具有一定借鉴价值,内容详细步骤清晰,细节处理妥当,希望大家通过这篇文章有所收获,下面让我们一起来看看具体内容吧。
给定一个整数数组 nums
,其中恰好有两个元素只出现一次,其余所有元素均出现两次。找出只出现一次的那两个元素。
示例 :
输入: 输出:
答案:
1public int[] singleNumber(int[] nums) {
2 int diff = 0;
3 for (int num : nums) {
4 diff ^= num;
5 }
6 diff &= -diff;
7 int[] rets = {0, 0};
8 for (int num : nums) {
9 if ((num & diff) == 0) {
10 rets[0] ^= num;
11 } else {
12 rets[1] ^= num;
13 }
14 }
15 return rets;
16}
解析:
这题解法也比较多,这里只列出了这一种解法,如果想了解更多,可以参照前面两道题的解法。题目说了只有两个数出现了一次,其他的都出现了2次,我们把所有值都异或一遍,异或的结果就是那两个只出现一次的异或值,因为出现两次的异或结果都为0。因为这两个值不相同,所以他们的异或结果肯定不为0,也就是说这个结果转化为二进制的某一位上肯定有1,我们就根据这个1可以把数组分为两个部分,并且这两个只出现一次的肯定不会在同一组,根据这个特性我们很容易就能找到这两个值。
Java主要应用于:1. web开发;2. Android开发;3. 客户端开发;4. 网页开发;5. 企业级应用开发;6. Java大数据开发;7.游戏开发等。
感谢您的阅读,希望您对“如何使用java查看只出现一次的数字”这一关键问题有了一定的理解,具体使用情况还需要大家自己动手实验使用过才能领会,快去试试吧,如果想阅读更多相关知识点的文章,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。