社区
新手乐园
帖子详情
我想请教一下,如何用两个整数异或,来判断两个整数是否相等。
taseaa
2010-04-28 09:55:42
我想请教一下,如何用两个整数异或,来判断两个整数是否相等。
...全文
1073
25
打赏
收藏
我想请教一下,如何用两个整数异或,来判断两个整数是否相等。
我想请教一下,如何用两个整数异或,来判断两个整数是否相等。
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
25 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
johnelf
2010-04-28
打赏
举报
回复
mao
我就看看。。
FingerStyle
2010-04-28
打赏
举报
回复
空格跟优先级 有毛的关系 = =
azure110
2010-04-28
打赏
举报
回复
用不着再 跟了..请自己尝试吧.
baihacker
2010-04-28
打赏
举报
回复
bitxinhai
2010-04-28
打赏
举报
回复
[Quote=引用 16 楼 classpatterns 的回复:]
引用 8 楼 bitxinhai 的回复:
引用 4 楼 baihacker 的回复:
引用 2 楼 bitxinhai 的回复:
int a1 = 10,a2 = 10;
if(a1^a2 == 0)
cout<<"="<<endl;
else
cout<<"!="<<endl;
a2 = 30;
if(a1^a2 == 0)
cout<<"="<<endl;
e……
[/Quote]
请问大侠,你能把所有的运算符的优先级,一一的正确罗列出来吗???
FingerStyle
2010-04-28
打赏
举报
回复
[Quote=引用 8 楼 bitxinhai 的回复:]
引用 4 楼 baihacker 的回复:
引用 2 楼 bitxinhai 的回复:
int a1 = 10,a2 = 10;
if(a1^a2 == 0)
cout<<"="<<endl;
else
cout<<"!="<<endl;
a2 = 30;
if(a1^a2 == 0)
cout<<"="<<endl;
else
cout<<"!="<<endl;
……
[/Quote]
请问您是怎么到5个裤衩的。空格哪来的优先关系。
lylm
2010-04-28
打赏
举报
回复
谢谢,
请教一下,如何将它(A^b)的结果映射成0和1?
比如:
int c[2];
if(a==b){c[0]++;}
将a^b结果映射成0和1==》c[a^b];
>>a^b不能映射成1,a,b不相等时,a^b非0,但并不是1,可以下面这样
if ((a^b) == 0)
{
d=0;
}
else
{
d=1;
}
然后用d作数组下标
bitxinhai
2010-04-28
打赏
举报
回复
[Quote=引用 9 楼 baihacker 的回复:]
引用 8 楼 bitxinhai 的回复:
引用 4 楼 baihacker 的回复:
引用 2 楼 bitxinhai 的回复:
int a1 = 10,a2 = 10;
if(a1^a2 == 0)
cout<<"="<<endl;
else
cout<<"!="<<endl;
a2 = 30;
if(a1^a2 == 0)
cout<<"="<<endl;
els……
[/Quote]
多谢,受教了。。。
taseaa
2010-04-28
打赏
举报
回复
[Quote=引用 12 楼 baihacker 的回复:]
!!(a^b)
[/Quote]
是
if(a==b){c[0]++;}else{c[1]++;} 换成异或==> c[!!(a^b)]++;
这样吗?
谢谢。
baihacker
2010-04-28
打赏
举报
回复
!!(a^b)
taseaa
2010-04-28
打赏
举报
回复
[Quote=引用 10 楼 baihacker 的回复:]
引用 7 楼 taseaa 的回复:
引用 6 楼 delphiwcdj 的回复:
引用 1 楼 baihacker 的回复:
if ((a^b) == 0)
{
相等;
}
else
{
不等;
}
相同的两个数异或为0
那不相同为1对吗?
感谢你的跟帖。
不相同,非零。
[/Quote]
谢谢,
请教一下,如何将它(A^b)的结果映射成0和1?
比如:
int c[2];
if(a==b){c[0]++;}
将a^b结果映射成0和1==》c[a^b];
baihacker
2010-04-28
打赏
举报
回复
[Quote=引用 7 楼 taseaa 的回复:]
引用 6 楼 delphiwcdj 的回复:
引用 1 楼 baihacker 的回复:
if ((a^b) == 0)
{
相等;
}
else
{
不等;
}
相同的两个数异或为0
那不相同为1对吗?
感谢你的跟帖。
[/Quote]
不相同,非零。
baihacker
2010-04-28
打赏
举报
回复
[Quote=引用 8 楼 bitxinhai 的回复:]
引用 4 楼 baihacker 的回复:
引用 2 楼 bitxinhai 的回复:
int a1 = 10,a2 = 10;
if(a1^a2 == 0)
cout<<"="<<endl;
else
cout<<"!="<<endl;
a2 = 30;
if(a1^a2 == 0)
cout<<"="<<endl;
else
cout<<"!="<<endl;
……
[/Quote]
空格和优先级无关。
bitxinhai
2010-04-28
打赏
举报
回复
[Quote=引用 4 楼 baihacker 的回复:]
引用 2 楼 bitxinhai 的回复:
int a1 = 10,a2 = 10;
if(a1^a2 == 0)
cout<<"="<<endl;
else
cout<<"!="<<endl;
a2 = 30;
if(a1^a2 == 0)
cout<<"="<<endl;
else
cout<<"!="<<endl;
注意运算优先级,关系运算是高于二元位运算的
[/Quote]
a1^a2 == 0
看清楚了,关键是==的前后都有一个空格的,难道这不影响这个表达式的运算优先级吗???
taseaa
2010-04-28
打赏
举报
回复
[Quote=引用 6 楼 delphiwcdj 的回复:]
引用 1 楼 baihacker 的回复:
if ((a^b) == 0)
{
相等;
}
else
{
不等;
}
相同的两个数异或为0
[/Quote]
那不相同为1对吗?
感谢你的跟帖。
delphiwcdj
2010-04-28
打赏
举报
回复
[Quote=引用 1 楼 baihacker 的回复:]
if ((a^b) == 0)
{
相等;
}
else
{
不等;
}
[/Quote]
相同的两个数异或为0
taseaa
2010-04-28
打赏
举报
回复
我Google了一下,好像是这样:
return ((a ^ b) == 0)
类似这样:
if(a==b){C++;}
如果使用异或来完成思路应该是怎样呢。
baihacker
2010-04-28
打赏
举报
回复
[Quote=引用 2 楼 bitxinhai 的回复:]
int a1 = 10,a2 = 10;
if(a1^a2 == 0)
cout<<"="<<endl;
else
cout<<"!="<<endl;
a2 = 30;
if(a1^a2 == 0)
cout<<"="<<endl;
else
cout<<"!="<<endl;
[/Quote]
注意运算优先级,关系运算是高于二元位运算的
z569362161
2010-04-28
打赏
举报
回复
[Quote=引用 1 楼 baihacker 的回复:]
if ((a^b) == 0)
{
相等;
}
else
{
不等;
}
[/Quote]
是这样的吗????????????????????
bitxinhai
2010-04-28
打赏
举报
回复
int a1 = 10,a2 = 10;
if(a1^a2 == 0)
cout<<"="<<endl;
else
cout<<"!="<<endl;
a2 = 30;
if(a1^a2 == 0)
cout<<"="<<endl;
else
cout<<"!="<<endl;
加载更多回复(5)
什么是
异或
_
异或
运算及
异或
运算的作用
什么是
异或
_
异或
运算及
异或
运算的作用
异或
,是一个数学运算符,英文为exclusive OR,缩写为xor,应用于逻辑运算。
异或
的数学符号为“⊕”,计算机符号为“xor”。其运算法则为: a⊕b = (¬a ∧ b) ∨ (a ∧¬b) 如果a、b
两个
值不相同,则
异或
结果为1。如果a、b
两个
值相同,
异或
结果为0。
异或
也叫半加运算,其运算法则相当于不带进位的二进制加法:二进制下...
使用位运算
判断
两个
int值
是否
相等
int judge(int x, int y) { return !(x ^ y); } 如果x和y
相等
,则各位都
相等
,
异或
值为0,取反即可
Java中
异或
运算实现
两个
整数
的交换以及其功能函数实现
今天学习到一种超酷炫的交换
两个
整数
的方法,给各位分享
一下
。
异或
运算属于位运算的一种,首先简单介绍
一下
异或
预算的语法规则。 假设a与b为不
相等
的
两个
整数
。 (1)a^a=0; (2)a^b=0; (3)a^0=a; (4)a^b=b^a,即
异或
满足交换律。 (5)(a^b)^c=a^(b^c),即
异或
满足结合律。 接下来介绍
一下
异或
运算实现
两个
整数
交换的原理,同样假设a与b为
位运算题目:形成
两个
异或
相等
数组的三元组数目
的所有子数组,对于每个子数组计算子数组中的所有元素的按位
异或
运算结果。的时间计算子数组中的所有元素的按位
异或
运算结果,因此时间复杂度是。使用该方法,计算一个子数组中的所有元素的按位
异或
运算结果的时间是。,对于每个子数组计算子数组中的所有元素的按位
异或
运算结果的时间是。的子数组中的所有元素的按位
异或
运算结果等于。中的所有元素的按位
异或
运算结果,因此。,则该子数组中符合要求的三元组的数目是。中的所有元素的按位
异或
运算结果等于。中的所有元素的按位
异或
运算结果,中的所有元素的按位
异或
运算结果。
异或
运算的作用
参与运算的
两个
值,如果
两个
相应bit位相同,则结果为0,否则为1。 即: 0^0 = 0, 1^0 = 1, 0^1 = 1, 1^1 = 0 按位
异或
的3个特点: (1) 0^0=0,0^1=1 0
异或
任何数=任何数 (2) 1^0=1,1^1=0 1
异或
任何数-任何数取反 (3) 任何数
异或
自己=把自己置0 按位
异或
的几个
新手乐园
33,315
社区成员
41,769
社区内容
发帖
与我相关
我的任务
新手乐园
C/C++ 新手乐园
复制链接
扫一扫
分享
社区描述
C/C++ 新手乐园
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章