九度剑指Offer面试题10:二进制中1的个数(Java题解)

面试题10二进制中1的个数

分析:

利用n & (n – 1),每次减少1个1,直到n为全0,计数即可得到1的个数。

题解:

import java.util.Scanner;public class Main {public static void main(String args[]) {Scanner cin = new Scanner(System.in);int T = cin.nextInt();int n;int count;for (int i = 0; i < T; ++i) {n = cin.nextInt();count = 0;while (n != 0) {++count;n = n & (n - 1);}System.out.println(count);}}}

感谢阅读!

不要识途去改变他人,同样,也不要被他人所改变。改了,就不是自己了。

九度剑指Offer面试题10:二进制中1的个数(Java题解)

相关文章:

你感兴趣的文章:

标签云: