位运算
moyangxian
总会过去的
展开
-
数组中数字出现的次数(异或位运算)
题记:把全部数异或一次,然后在异或之后的数的位数中找一个1,将原数组分为两组,然后再次异或即可找到答案。 例:[4,1,4,6] 4 0100 4 0100 6 0110 1 0001 异或之后得:0111 找到其中一个1,取最后一位。 将原数组中最后一位为1的分为一组,为0的分为一组。 1为一组,4、4、6为一组。 这两组再异或一次即可得答案。 class Solution { public: ...原创 2020-04-28 17:31:26 · 221 阅读 · 0 评论 -
位运算
模板 模板来自AcWing 求n的第k位数字: n >> k & 1 返回n的最后一位1:lowbit(n) = n & -n 二进制中1的个数 给定一个长度为n的数列,请你求出数列中每个数的二进制表示中1的个数。 输入格式 第一行包含整数n。 第二行包含n个整数,表示整个数列。 输出格式 共一行,包含n个整数,其中的第 i 个数表示数列中的第 i 个数的二进制表示中...原创 2020-03-30 20:19:10 · 80 阅读 · 0 评论