5
Tôi không biết cách dịch từ C++ sang Java. Đây là một hàm tính toán trọng lượng Hamming.Computing Hamming weight, còn được gọi là popcount trong Java?
/** This is popcount_3() from:
* http://en.wikipedia.org/wiki/Hamming_weight */
unsigned int popcnt32(uint32_t n) const
{
n -= ((n >> 1) & 0x55555555);
n = (n & 0x33333333) + ((n >> 2) & 0x33333333);
return (((n + (n >> 4))& 0xF0F0F0F)* 0x1010101) >> 24;
}
Cụ thể hơn, tôi không biết những gì để sử dụng thay vì uint32_t, và nếu tôi sử dụng loại rằng bất cứ điều gì, tôi có thể chỉ để lại phần còn lại đang thay đổi?
Cảm ơn
Bạn đã thử nó? –
Đối với một, không có tương đương 'uint32_t' trong Java, bạn phải sử dụng' long'. – fge
Oli tốt Tôi không chắc chắn những gì để thử thực sự. Có vẻ như rất nhiều thứ có thể sai. – user1796942