type
status
date
slug
summary
tags
category
icon
password
创建时间
Mar 1, 2025 01:45 AM
颠倒给定的 32 位无符号整数的二进制位。
提示:
- 请注意,在某些语言(如 Java)中,没有无符号整数类型。在这种情况下,输入和输出都将被指定为有符号整数类型,并且不应影响您的实现,因为无论整数是有符号的还是无符号的,其内部的二进制表示形式都是相同的。
- 在 Java 中,编译器使用二进制补码记法来表示有符号整数。因此,在 示例 2 中,输入表示有符号整数
3
,输出表示有符号整数1073741825
。
位运算
对称构造
逐位构造
分组构造
前两种方法好理解。分组构造的方法采用分治的思想
- 先前后调换,例如 aabbccdd,调换为 ccddaabb
- 细化,将得到的前后(ccdd-aabb),再次重复上述步骤,直至不能分解。即:ccdd前后调换,得到ddcc,aabb 前后调换bbaa,得到 bb-aa-dd-cc
- 最后,向上合并。
📎 参考
- 无