国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

LeetCode: Total Hamming Distance

2019-11-09 20:07:28
字體:
來源:轉載
供稿:網友

The Hamming distance between two integers is the number of positions at which the corresponding bits are different.

Now your job is to find the total Hamming distance between all pairs of the given numbers.

Example:

Input: 4, 14, 2Output: 6Explanation: In binary rePResentation, the 4 is 0100, 14 is 1110, and 2 is 0010 (justshowing the four bits relevant in this case). So the answer will be:HammingDistance(4, 14) + HammingDistance(4, 2) + HammingDistance(14, 2) = 2 + 2 + 2 = 6.

Note:

Elements of the given array are in the range of to 10^9

Length of the array will not exceed 10^4.

思路:一個有多個0,1組成的序列,所有的漢明距離和為0的個數乘以1的個數

int totalHammingDistance(int* nums, int numsSize) {        int totalD = 0;    int bits[32];    for (int i = 0; i < 32; ++i) {        bits[i] = 0;    }        for (int i = 0; i < numsSize; ++i) {        for (int j = 0; j < 32; ++j) {            bits[j] += nums[i] & 1;            nums[i] >>= 1;        }    }        for (int i = 0; i < 32; ++i) {        totalD += bits[i] * (numsSize - bits[i]);    }        return totalD;}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 玉山县| 宣化县| 金阳县| 邢台县| 乐陵市| 东阿县| 图木舒克市| 财经| 临澧县| 岑溪市| 瑞金市| 东方市| 台中市| 阳城县| 迁安市| 浮山县| 南岸区| 白玉县| 南漳县| 健康| 临桂县| 上虞市| 广饶县| 高陵县| 肥东县| 秦安县| 鄂托克前旗| 汽车| 大宁县| 阿拉善盟| 荆门市| 哈尔滨市| 平邑县| 吴江市| 体育| 丹阳市| 江陵县| 尼勒克县| 怀远县| 鹤庆县| 耿马|