力扣190. 颠倒二进制位
2023-12-18 05:57:49
位运算
- 思路:
- 逐位颠倒,第 i 位二进制移动到 (31 - i) 位上
-
result |= (n & 1) << (31 - i);
-
- 逐位颠倒,第 i 位二进制移动到 (31 - i) 位上
class Solution {
public:
uint32_t reverseBits(uint32_t n) {
uint32_t result = 0;
for (int i = 0; i < 32 && n > 0; ++i) {
result |= (n & 1) << (31 - i);
n >>= 1;
}
return result;
}
};
- 据了解,还有空间复杂度为 O(1) 的算法,后续研究;
文章来源:https://blog.csdn.net/N_BenBird/article/details/135051289
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!