博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
位运算
阅读量:6308 次
发布时间:2019-06-22

本文共 579 字,大约阅读时间需要 1 分钟。

介绍位运算相关的知识:

1.’ & ’符号,x&y,会将两个十进制数在二进制下进行与运算,然后返回其十进制下的值。
例如 3(11)&2(10)=2(10)
2.’ | ’符号,x|y,会将两个十进制数在二进制下进行或运算,然后返回其十进制下的值。
例如 3(11)|2(10)=3(11)
3.’ ^ ’符号,x^y,会将两个十进制数在二进制下进行异或运算,然后返回其十进制下的
值。例如 3(11)^2(10)=1(01)
4.’ << ’符号,左移操作,x<<2,将 x 在二进制下的每一位向左移动两位,最右边用 0 填
充,x<<2 相当于让 x 乘以 4。相应的,’>>’是右移操作,x>>1 相当于给 x/2,去掉 x 二进制下的最有一位。
这四种运算在状压 dp 中有着广泛的应用,常见的应用如下:
1.判断一个数字 x 二进制下第 i 位是不是等于 1。
方法:if ((x>>i)&1)
2.将一个数字 x 二进制下第 i 位更改成 1。
方法:x = x | 1<<i
证明方法与 1 类似,此处不再重复证明。
3.把一个数字二进制下最靠右的第一个 1 去掉。
方法:x=x&(x-1)

位运算在状压 dp 中用途十分广泛。

转载于:https://www.cnblogs.com/lxy050129/p/10298581.html

你可能感兴趣的文章
python调试pdb
查看>>
printf 详解 笔记
查看>>
PhotoSwipe-一个好用的图片放大缩小插件
查看>>
Swift 浅谈Struct与Class
查看>>
php ob_start callback failed
查看>>
linqjs
查看>>
apparent
查看>>
开源项目:高级SQL Server监控、性能图、分析与优化、版本控制
查看>>
汕头市队赛SRM07
查看>>
springmvc+jsp引用本地图片文件
查看>>
mysql cluster 安装配置方案
查看>>
文件操作
查看>>
依赖注入(DI)和控制反转(IOC)【回顾】
查看>>
[Reading]01/06/2012
查看>>
C#委托与事件
查看>>
ExtensionMethods Class
查看>>
Jmeter content-type:multipart/form-data温故
查看>>
服务器改造个人工作站经验总结
查看>>
Android checkBox
查看>>
(5)Maven快速入门_5maven聚合与继承_scope依赖范围
查看>>