漢明距離 數字的補數

2021-09-10 16:26:28 字數 1087 閱讀 5767

大家新年好!!!  過完年也該繼續做題了。

兩個整數之間的漢明距離指的是這兩個數字對應二進位制位不同的位置的數目。

給出兩個整數 x 和 y,計算它們之間的漢明距離。

注意:0 ≤ x, y < 2^31.

示例:輸入 : x = 1, y = 4

輸出 : 2

解釋 :

1   (0 0 0 1)

4   (0 1 0 0)

↑    ↑

上面的箭頭指出了對應二進位制位不同的位置。

我的想法是將兩個數字以二進位制的形式每次取出最低位比較,直到兩個數字都為0

#define _crt_secure_no_warnings 

#include #include int hammingdistance(int x, int y)

x /= 2;

y /= 2;

} return count;

}int main()

給定乙個正整數,輸出它的補數。補數是對該數的二進位制表示取反。

注意 :

給定的整數保證在32位帶符號整數的範圍內。

你可以假定二進位制數不包含前導零位。

示例 1 :

輸入 : 5

輸出 : 2

解釋 : 5的二進位制表示為101(沒有前導零位),其補數為010。所以你需要輸出2。

示例 2 :

輸入 : 1

輸出 : 0

解釋 : 1的二進位制表示為1(沒有前導零位),其補數為0。所以你需要輸出0。

我做這個題想法是 我先計算這個數轉換成二進位制有多少位,然後與多少位由1組成的二進位制數按位與

#define _crt_secure_no_warnings 

#include #include int findcomplement(int num)

b -= 1; //二進位制位全1的數

num ^= b;

return num;

}int main()

Hamming Distance 漢明距離

在資訊理論中,hamming distance 表示兩個等長字串在對應位置上不同字元的數目,我們以d x,y 表示字串x和y之間的漢明距離。從另外乙個方面看,漢明距離度量了通過替換字元的方式將字串x變成y所需要的最小的替換次數。舉例說明以下字串間的漢明距離為 karolin and kathrin ...

漢明距離總和

題目 兩個證書的漢明距離指的是這兩個數字的二進位制數對應值不同的數量。計算乙個陣列中,任意兩個數之間漢明距離的總和。示例 輸入 4,14,2 輸出 6 解釋 在二進位制表示中,4表示為0100,14表示為1110,2表示為0010。這樣表示是為了提現後四位之間的關係 所以答案為 hammingdis...

Hamming Distance漢明距離

漢明距離是使用在資料傳輸差錯控制編碼裡面的,漢明距離是乙個概念,它表示兩個 相同長度 字對應位不同的數量,我們以d x,y 表示兩個字x,y之間的漢明距離。對兩個字串進行異或運算,並統計結果為1的個數,那麼這個數就是漢明距離。在資訊理論中,兩個等長字串之間的漢明距離是兩個字串對應位置的不同字元的個數...