求比正整数N大的最小正整数M,且M与N的二进制表示中有相同数目的1
摘要:
转自http://blog.csdn.net/ligt0610/article/details/7262757一般最容易想到的方法就是先计算正整数N用二进制表示时1的个数count1,然后不停地计算N++用二进制表示时1的个数count2,直到碰到count1 == count2成立,代码如下:[cpp]typedefunsignedintuint;//解法一:uintcount1Bits(uintn){uintcount=0;while(0!=n){n&=n-1;count++;}returncount;}uintgetNextN_1(uintn){uintcount=count1B 阅读全文
posted @ 2014-03-12 21:30 pengyu2003 阅读(724) 评论(0) 推荐(0)
浙公网安备 33010602011771号