互联网大厂面试题:二进制位操作技巧与算法思路.pdfVIP

  • 1
  • 0
  • 约小于1千字
  • 约 1页
  • 2026-07-21 发布于北京
  • 举报

互联网大厂面试题:二进制位操作技巧与算法思路.pdf

A循环移动

1.题面信息

所有的输入应该看作是无符号整数;

JAVA中所有的数都是有符号的。并且采用二进制补码来实现的。

1)正数的补码就是本身(原码)

e.g.,50

30

2)负数采用原码补码+1实现;//为了保证0的补码和原码是同一个表达形式;

e.g.,-5=0-补码--0--+1--0

-30-0-0

对一个数的二进制而言,如果最是0表示一个正数;如果是1表示该数是一个负数。

如果是JAVA来实现,在位移操作的时候,需要考虑无符号位移。

2.算法思路

为了取出正数的最后一位。使用掩码1开取出最低位。8位的掩码来表达。0

用移动到指定的。

B位集合翻转

1.算法思路

发现每位都是以该位到“”的距离进行180度翻转。

//x位和31-x位进行交换,对所有的$x\le15$.

C分治法

1.算法思

文档评论(0)

1亿VIP精品文档

相关文档