上百度推广 免费做网站,搜狗推广登录平台,500强网站设计,找公司做网站需要咨询什么问题有点慢#xff0c;两层循环也可以完成#xff0c;就是换个方向#xff0c;外层遍历32大小的bits数组#xff0c;里层遍历nums的数字每次右移一位#xff0c;计算方法类似。
class Solution {public int totalHammingDistance(int[] nums) {//int 是4byte #xff0c; 每…
有点慢两层循环也可以完成就是换个方向外层遍历32大小的bits数组里层遍历nums的数字每次右移一位计算方法类似。
class Solution {public int totalHammingDistance(int[] nums) {//int 是4byte 每个byte对应8位(比特)所以一个int是32位int [] bits new int[32];int res0, len nums.length;for (int j : nums) {int index bits.length - 1;while(j ! 0){if(j 1){bits[index];break;}if(j % 2 1){bits[index];}j j / 2;index--;}}for (int bit : bits) {res (bit * (nums.length - bit));}return res;}
}