数组中只出现一次的数字Java实现
来源:互联网 发布:景观设计用什么软件 编辑:程序博客网 时间:2024/05/28 11:49
一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。
思路:异或数组所有元素,由于相同的数异或之后为0,所以最后剩下的是两个只出现一次的数异或。然后记下其中一个为1的位置。遍历整个数组,当和这个数做&操作时,为0的一起异或,则能找出其中一个只出现一次的数。然后为1的那个为另一个只出现一次的数。
//num1,num2分别为长度为1的数组。传出参数//将num1[0],num2[0]设置为返回结果public class Solution { public void FindNumsAppearOnce(int [] array,int num1[] , int num2[]) { if(array.length < 2) return ; int myxor = 0; int flag = 1; for(int i = 0 ; i < array.length; ++ i ) myxor ^= array[i]; while((myxor & flag) == 0) flag <<= 1; // num1[0] = myxor; //num2[0] = myxor; for(int i = 0; i < array.length; ++ i ){ if((flag & array[i]) == 0) num2[0]^= array[i]; else num1[0]^= array[i]; } }}
阅读全文
0 0
- 数组中只出现一次的数字(Java实现)
- 数组中只出现一次的数字Java实现
- java 找出数组中只出现一次的数字
- 数组中只出现一次的数字(java版)
- java面试题---数组中只出现一次的数字
- 数组中只出现一次的数字 JAVA
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- Myeclipse中jsp默认编码格式改为pageEncoding="utf-8"
- 微信全文搜索优化之路
- Codeforces Round #437 (Div. 2, based on MemSQL Start[c]UP 3.0
- Linux下的tar压缩解压缩命令详解
- spring的4种事务特性,5种隔离级别,7种传播行为
- 数组中只出现一次的数字Java实现
- Python微信好友信息意义及取值分析(基于itchat)
- JSP指令
- jdbc随笔
- Two Sum
- 第14期《成长之路》2017年10月刊
- 自定义view的基本运用
- 1073. Scientific Notation (20)
- js-es6-set数据结构