位运算
Saulty
这个作者很懒,什么都没留下…
展开
-
LeetCode 136. 只出现一次的数字
LeetCode 136. 只出现一次的数字题目题解代码 题目 题解 数组排序 位运算 异或运算: 代码 // class Solution { // public: // int singleNumber(vector<int>& nums) { // sort(nums.begin(),nums.end()); // int n=nums.size(); // if(n==1) // return原创 2021-07-17 11:38:46 · 38 阅读 · 0 评论 -
LeetCode 190. 颠倒二进制位
LeetCode 190. 颠倒二进制位题目题解代码 题目 题解 位运算 与运算: (1)清零。如果想将一个单元清零,即使其全部二进制位为0,只要与一个各位都为零的数值相与,结果为零。 (2)取一个数中的指定位置数值。找一个数,对应X要取的位,该数的对应位为1,其余位为零,此数与X进行“与运算”可以得到X中的指定位。 或运算: (1)常用来对一个数据的某些位,置1。 二进制运算里 或运算 等价于 没有进位的加法运算 分治 代码 // class Solution { // public: //原创 2021-07-17 11:38:26 · 69 阅读 · 0 评论 -
LeetCode 191. 位1的个数
LeetCode 191. 位1的个数题目题解代码 题目 提示: 输入必须是长度为 32 的 二进制串 。 进阶: 如果多次调用这个函数,你将如何优化你的算法? 题解 代码 // class Solution { // public: // int hammingWeight(uint32_t n) { // int res=0; // for(int i=0;i<32;i++){ // if((n&(1<<i))原创 2021-07-16 10:59:29 · 51 阅读 · 0 评论 -
LeetCode 231. 2 的幂
LeetCode 231. 2 的幂题目题解代码 题目 提示: -231 <= n <= 231 - 1 进阶:你能够不使用循环/递归解决此问题吗? 题解 n & (n−1),其运算结果恰为把n 的二进制位中的最低位的 1 变为 0之后的结果。 要考虑n大于0 代码 // class Solution { // public: // bool isPowerOfTwo(int n) { // if(n<=0) // return f原创 2021-07-16 10:59:06 · 47 阅读 · 0 评论