【LeetCode技巧总结】位运算操作技巧

作者:張張張張github地址:https://github.com/zhanghekai【转载请注明出处,谢谢!】由于位运算直接对内存数据进行操作,不需要转成十进制,直接在二进制上进行运算,因此处理速度非常快!按位“与”(Bitwise AND),运算符号为:&\&&a&ba\&ba&b 的操作结果:a...
摘要由CSDN通过智能技术生成

作者:張張張張
github地址:https://github.com/zhanghekai
【转载请注明出处,谢谢!】


★★★由于位运算直接对内存数据进行操作,不需要转成十进制,直接在二进制上进行运算,因此处理速度非常快!!!

一、按位“与”运算符

  • 按位“与”(Bitwise AND),运算符号为: & \& &
  • a & b a\&b a&b 的操作结果: a 、 b a、b ab中对应位同时为1,则对应结果位也为1,其余情况对应结果位为0。
    例:
    10010001101000101011001111000 &     111111100000000 − − − − − − − − − − − − − − − − 101011000000000 10010001101000101011001111000\\ \&\qquad\qquad\qquad\;\,111111100000000\\----------------\\\qquad\qquad\qquad\quad101011000000000 10010001101000101011001111000&111111100000000101011000000000

1. 用于整数的奇偶性判断

\qquad 一个整数 a a a a & 1 a\&1 a&1这个表达式可以用来判断 a a a的奇偶性。二进制的末尾位为 0 0 0表示偶数,末尾位为 1 1 1表示奇数。使用 a % 2 a\%2 a%2来判断奇偶性和 a & 1 a\&1 a&1是一样的作用,但是 a & 1 a\&1 a&1要快好多。

例:当

  • 5
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值