异或运算.

相同为0,不同为1。

java 复制代码
1 ^ 1=0
0 ^ 0=0
1 ^ 0=1
0 ^ 1=1

性质:

  1. 0 ^ N = N N ^ N = 0
  2. 交换、结合
    a ^ b = b ^ a;
    (a ^ b) ^ c = a ^ (b ^ c);
    因此异或全部的元素的结果就是那个只出现1次的元素。

实现两个值的交换,而不必使用临时变量(值可以相等,但前提是他两指向的内存是两块东西)。

例如交换两个整数a = 甲;b = 乙;的值,可通过下列语句实现:

java 复制代码
 a = 甲;
 b = 乙;
 a = a^b;   || a =  甲 ^ 乙
 b = a^b;   || b = (甲 ^ 乙) ^ 乙 = 甲
 a = a^b;   || a = (甲 ^ 乙) ^ 甲 = 乙

例题:

有一个数组

1、其中有一种数,出现了奇数次,其他的出现了偶数次;

解法:直接异或所有数。

2、其中有两种数,出现了奇数次,其他的出现了偶数次。

插入排序

对数器

相关推荐
逻辑驱动的ken11 分钟前
Java高频面试考点场景题22
java·开发语言·jvm·面试·职场和发展·求职招聘·春招
m0_6294947312 分钟前
LeetCode 热题 100-----18.矩阵置零
数据结构·leetcode·矩阵
小则又沐风a17 分钟前
list模拟实现
java·服务器·list
上弦月-编程20 分钟前
C语言链表详解,新手也能看懂! ——从入门到精通的完整教程
java·c语言·c++
ffqws_33 分钟前
Spring Boot 配置读取全解析:从 application.yml 到 Java 对象的完整链路
java·数据库·spring boot
clear sky .34 分钟前
【TCP】TCP数据粘包/分包问题
java·服务器·网络
云烟成雨TD35 分钟前
Spring AI 1.x 系列【29】Embedding Model(嵌入模型)
java·人工智能·spring
SunnyByte40 分钟前
数据结构——算法效率
数据结构
幸福巡礼44 分钟前
【 LangChain 1.2 实战(四)】构建一个模块化的天气查询 Agent
java·前端·langchain
wuminyu10 小时前
专家视角看Java字节码加载与存储指令机制
java·linux·c语言·jvm·c++