位运算
iblue_coffee
一个又菜还不承认自己菜的追梦人。
展开
-
LeetCode第191题解析
编写一个函数,输入是一个无符号整数,返回其二进制表达式中数字位数为 ‘1’的个数(也被称为汉明重量)。示例 1:输入:00000000000000000000000000001011输出:3解释:输入的二进制串 00000000000000000000000000001011中,共有三位为 '1'。示例 2:输入:00000000000000000000000010000000输出:1解释:输入的二进制串 00000000000000000000000010000000中...原创 2020-08-25 20:10:58 · 184 阅读 · 0 评论 -
LeetCode第231题解析
给定一个整数,编写一个函数来判断它是否是 2 的幂次方。示例1:输入: 1输出: true解释: 20 = 1示例 2:输入: 16输出: true解释: 24 = 16示例 3:输入: 218输出: false解题思路:解题关键:2的幂的特点是二进制表示中只有一位是1。通过判断二进制表示法中1的个数就可以判断该数是否是2的幂。class Solution {public: bool isPowerOfTwo(int n) { .原创 2020-08-25 20:27:54 · 126 阅读 · 0 评论 -
LeetCode第190题解析
颠倒给定的 32 位无符号整数的二进制位。示例 1:输入: 00000010100101000001111010011100输出: 00111001011110000010100101000000解释: 输入的二进制串 00000010100101000001111010011100 表示无符号整数 43261596, 因此返回 964176192,其二进制表示形式为 00111001011110000010100101000000。示例 2:输入:11111111...原创 2020-08-25 20:49:48 · 327 阅读 · 0 评论 -
LeetCode第52题解析
n皇后问题研究的是如何将n个皇后放置在n×n的棋盘上,并且使皇后彼此之间不能相互攻击。上图为 8 皇后问题的一种解法。给定一个整数n,返回n皇后不同的解决方案的数量。示例:输入: 4输出: 2解释: 4 皇后问题存在如下两个不同的解法。[[".Q..", // 解法 1 "...Q", "Q...", "..Q."],["..Q.", // 解法 2 "Q...", "...Q", ".Q.."]]提示:皇后,是国...原创 2020-08-25 21:38:04 · 243 阅读 · 0 评论 -
LeetCode第338题解析
给定一个非负整数num。对于0 ≤ i ≤ num范围中的每个数字i,计算其二进制数中的 1 的数目并将它们作为数组返回。示例 1:输入: 2输出: [0,1,1]示例2:输入: 5输出: [0,1,1,2,1,2]进阶:给出时间复杂度为O(n*sizeof(integer))的解答非常容易。但你可以在线性时间O(n)内用一趟扫描做到吗? 要求算法的空间复杂度为O(n)。 你能进一步完善解法吗?要求在C++或任何其他语言中不使用任何内置函数(如 C++ 中的...原创 2020-08-25 21:52:15 · 110 阅读 · 0 评论