社区
C++ 语言
帖子详情
两负数异或的问题
youyou1912
2013-03-21 09:12:58
int x = -100;
int y = -1;
int z = x^y;
最后z= 99 而不是 101 为什么呢?
最高位符号位异或为0变正数, 最低位0^1应该变1. 也就是增加+1. 现在变成-1了.
请指教. 谢谢.
...全文
633
5
打赏
收藏
两负数异或的问题
int x = -100; int y = -1; int z = x^y; 最后z= 99 而不是 101 为什么呢? 最高位符号位异或为0变正数, 最低位0^1应该变1. 也就是增加+1. 现在变成-1了. 请指教. 谢谢.
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
youyou1912
2013-03-21
打赏
举报
回复
对了, 负数用补码表示, 我弄错了. 晕. 谢谢几位.
wenhong609
2013-03-21
打赏
举报
回复
数据用补码表示,估计是你的补码搞错了吧!
ForestDB
2013-03-21
打赏
举报
回复
LZ还能说出-100存的啥样子?
fox_carnival
2013-03-21
打赏
举报
回复
打错了一个地方,以1个字节为例
fox_carnival
2013-03-21
打赏
举报
回复
int以2个字节为例: -100的补码:1001 1100 -1的补码: 1111 1111 异或后: 0110 0011 结果就是十进制99
牛客 子数组最大
异或
和
本文介绍了一种解决前缀
异或
和最大值
问题
的方法,通过使用Trie树来寻找数组中
两
个数的最大
异或
值。特别地,针对正
负数
混合的情况进行了特殊处理,确保了符号位的正确计算。
leetcode260之Java中的
异或
运算
本文介绍了Java中位运算的基础知识,如
异或
的性质,并通过
异或
操作解决单数查找
问题
。同时涵盖了原码、反码和补码的概念及其在处理
负数
时的重要性。最后,通过实例演示了如何在数组中找出仅出现一次的
两
个数。
5.3 位运算专题:LeetCode 371.
两
整数之和
本文聚焦 LeetCode 371
两
整数之和
问题
,不使用运算符计算
两
数和。介绍了位运算模拟加法器的算法思路,包括无进位相加用
异或
、计算进位用与运算。还提及
负数
处理、循环终止条件等注意事项,对比暴力枚举法,位运算法时间复杂度优,适合大整数运算,还有实现减法等应用扩展。
按位
异或
与重新排列:从表达式化简到Trie优化
本文围绕位运算题中‘相邻
异或
链式表达式’的代数化简展开,揭示其等价于‘最大
异或
对’
问题
:原式经
异或
结合律与x⊕x=0性质化简后,仅剩首尾
两
元素
异或
。进而对比O(n²)暴力解法与基于二进制Trie的O(n·32)贪心解法,详解Trie构建、按位贪心正确性、插入查询流程,并指出位宽设置、
负数
处理、数组越界、边界n=1/2等关键踩坑点。
COJ 1216:
异或
最大值(01字典树)
本文探讨了一个在给定数量级为10^5的非
负数
集合中,寻找任意
两
个数
异或
值最大值的
问题
。通过构建字典树并采用贪心策略,实现了复杂度为树深度的高效求解过程。
C++ 语言
65,213
社区成员
250,514
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章