一个数如果出现K次的话,采用位运算的思想,这个数在每个位中1出现的次数也为k次,因此开辟一个32大小的数组,
通过 num>>i & 1,即将这个数右移i位,同时与1,然后加到当前位里,
之后判断每个位对k取余,如果不等于0,就说明是这个数,在将它左移i位,变回原来的数
题目
code
一个数如果出现K次的话,采用位运算的思想,这个数在每个位中1出现的次数也为k次,因此开辟一个32大小的数组,
通过 num>>i & 1,即将这个数右移i位,同时与1,然后加到当前位里,
之后判断每个位对k取余,如果不等于0,就说明是这个数,在将它左移i位,变回原来的数