/** * @param {number} n - a positive integer * @return {number} - a positive integer */ /** * @param {number} n - a positive integer * @return {number} - reversed bits result */ const reverseBits = function (n) { let res = 0; // 一共处理32位 for (let i = 0; i < 32; i++) { // 提取最低位(0或1) const bit = n & 1; // 把结果左移一位,为新加入的bit腾位置 res = (res << 1) | bit; // 原数字右移一位(无符号),处理下一位 n >>>= 1; } return res >>> 0; // 确保返回的是无符号数(防止变负) };