leetcode_位1的個數

#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];
    }
    
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章