一个整型数组里除了两个数字之外,其他的数字都出现了两次

news/2024/12/22 22:41:42/

题目:

一个整型数组里除了两个数字之外,其他的数字都出现了两次

 

解答:

我们从头到尾异或数组中的每个数字,那么最终的结果是两个只出现一次数字的异或的结果,由于两个数字不一样,那么异或的结果肯定不为0,那么这个数字的二进制表示中至少有一位为1。

 

 1 public class Solution {
 2     public static void main(String[] args) {
 3         int[] array = {2,4,3,6,3,2,5,5};
 4         findNumsAppearOnce(array);
 5     }
 6 
 7     private static void findNumsAppearOnce(int[] array){
 8         if(array == null) {
 9             return;
10         }
11 
12         int num = 0;
13         for(int i:array) {
14             num ^= i;
15         }
16 
17         int index = findFirstBitIs1(num);
18         int number1 = 0;
19         int number2 = 0;
20 
21         for(int i:array) {
22             if(isBit1(i, index)) {
23                 number1 ^= i;
24             } else {
25                 number2 ^= i;
26             }
27         }
28 
29         System.out.println(number1);
30         System.out.println(number2);
31     }
32 
33     private static int findFirstBitIs1(int num) {
34         int index = 0;
35         while((num&1) == 0) {
36             num = num >> 1;
37             index++;
38         }
39 
40         return index;
41     }
42 }

 

转载于:https://www.cnblogs.com/wylwyl/p/10384381.html


http://www.ppmy.cn/news/611855.html

相关文章

资源调度框架 YARN

3.1.1 什么是YARN Yet Another Resource Negotiator, 另一种资源协调者通用资源管理系统为上层应用提供统一的资源管理和调度,为集群在利用率、资源统一管理和数据共享等方面带来了巨大好处 3.1.2 YARN产生背景 通用资源管理系统 Hadoop数据分布式存储&#xff08…

微信小程序import和include

import 和include 是微信小程序提供的2中引用方式 import 一般结合模板template使用 import import可以在该文件中使用目标文件定义的template&#xff0c;如&#xff1a; 在 item.wxml 中定义了一个叫item的template&#xff1a; <!-- item.wxml --> <template …

基于至强® 平台的内存数据库解决方案

基于至强 平台的内存数据库解决方案 英特尔与 SAP 之间的协作和联合开发已持续六年。 SAP HANA 平台的创新内存架构契合持久内存&#xff0c;仅需少量变更。 SAP HANA 平台是第一个支持英特尔傲腾™ 数据中心级持久内存的重要数据库平台。 SAP HANA 2.0 SPS 03 包含众多…

线性回归算法原理简介

1&#xff0c;线性回归概念 回归和分类的区别&#xff1a;简单地说&#xff0c;回归就是通过数据预测出一个目标值&#xff08;实际值&#xff09;&#xff0c;分类就是通过数据预测出一个类别&#xff08;二分类&#xff0c;多分类&#xff09;。 比如&#xff1a;银行贷款实例…

python格式化

%s 字符串 %d 有符号整数(十进制) %f 浮点数字(用小数点符号) fomat转载于:https://www.cnblogs.com/jiaoxiaohui/p/10384467.html

微信小程序模板template

上面是官方的讲解, 主要是方便在不同的地方调用. 下面自己说下使用, 先创建一个模板名字是自己随便取的, 在template.wxml中填写模板 最外层用template标签 设置一个name属性 <template name"msgItem"> <view> <text bindtapclick1>学习总结中…

ODrive三环控制

目录 1. 位置控制环 2.速度控制环 3. 电流控制环路 4. 控制器详情 5. 调PID

逻辑回归算法原理简介

1&#xff0c;逻辑回归简介 逻辑回归完成分类任务&#xff0c;是经典的二分类算法&#xff08;也可以解决多分类问题&#xff09;&#xff0c;机器学习算法一般选择先逻辑回归&#xff08;优先选择&#xff09;再用复杂的&#xff0c;逻辑回归的决策边界可以是非线性的&#xf…