[LeetCode]Total Hamming Distance(Java)
来源:互联网 发布:程序员的自我修养pdf 编辑:程序博客网 时间:2024/06/03 15:05
这道题计算数组中所有元素的汉明距离
我的解法很常规。结果超时,时间O(n2)
这是我的答案
public class Solution { public int totalHammingDistance(int[] nums) { int result = 0; for(int i = 0;i < nums.length;i++){ for(int j = i+1;j < nums.length;j++) result += hammingDistance(nums[i],nums[j]); } return result; } public int hammingDistance(int first,int second){ int distance = 0; int result = first ^ second; while(result!=0){ distance += (result>>1) & 1; result = result>>1; } return distance; }}solution的答案是取每位的所有元素为1的个数,然后用总数-个数就是该位的汉明距离为1的总数
public class Solution { public int totalHammingDistance(int[] nums) { int total = 0, n = nums.length; for (int j=0;j<32;j++) { int bitCount = 0; for (int i=0;i<n;i++) bitCount += (nums[i] >> j) & 1; total += bitCount*(n - bitCount); } return total; }}
2017/3/3
0 0
- [LeetCode]Total Hamming Distance(Java)
- LeetCode: Total Hamming Distance
- LeetCode Total Hamming Distance
- leetcode-Total Hamming Distance
- Leetcode 477. Total Hamming Distance-java
- LeetCode 477. Total Hamming Distance
- 【Leetcode】477. Total Hamming Distance
- Leetcode Total Hamming Distance 477
- LeetCode 477. Total Hamming Distance
- 【LeetCode-477】Total Hamming Distance
- [leetcode] 477. Total Hamming Distance
- LeetCode 477. Total Hamming Distance
- LeetCode 477. Total Hamming Distance
- LeetCode 477. Total Hamming Distance
- Leetcode-477. Total Hamming Distance
- 【LeetCode】 477. Total Hamming Distance
- [leetcode]477. Total Hamming Distance
- leetcode-477-Total Hamming Distance
- Java 随机生成六位数验证码
- Android studio 自学笔记(一) 自定义 Dialog
- 数组作为函数参数传递时
- js/jquery 无刷分页通用代码
- ASM 翻译系列第三十七弹:ASM密码文件目录
- [LeetCode]Total Hamming Distance(Java)
- ha 资源启动不了
- 咘叮电子
- linux中与Oracle有关的内核参数详解
- Hadoop之wordcount有感
- Solr Admin Solr管理界面介绍(一)
- 常见的Java异常
- 如何设计一个小而美的秒杀系统(抢红包)?
- SQLite 3 中的数据类型