【ACWING】 位运算
1 遍历二进制下每一位的值
求n的二进制表示中的第k位
(n>>k)&1
int n = 10; for(int k = 3; k >= 0; k--) cout<<(n>>k)&1;
2 lowbit -- 返回一个二进制表示的最后一个1
比如
x = 1010
,返回10
x = 101000
,返回1000
int lowbit( int x){ return x&(-x); }
3 去掉最后一个1
x&(x-1)
分类:
算法 / ACWING算法基础课
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步