#191.位1的個數-簡單
數學
題目:
編寫一個函數,輸入是一個無符號整數,返回其二進制表達式中數字位數爲 ‘1’ 的個數(也被稱爲漢明重量)。
思路:
用%取的整數的最低位,然後用>>1將輸入的二進制數最低位消除,從而進行迭代。
void rotate(int* nums, int numsSize, int k){
int *nums_temp= calloc(numsSize + 1, sizeof(int)); ;
int i,j;
for(i=0;i<numsSize;i++)
{
nums_temp[i]=nums[i];
}
//copy the nums
for(j=0;j<numsSize;j++)
{
nums[(j+k)%numsSize]=nums_temp[j];
}
}