Computer >> Máy Tính >  >> Lập trình >> Java

Chương trình Java để đếm số bit đặt trong một số nguyên

Để đếm các bit đã đặt trong một số nguyên, mã Java như sau -

Ví dụ

import java.io.*;
public class Demo{
   static int set_bits_count(int num){
      int count = 0;
      while (num > 0){
         num &= (num - 1);
         count++;
      }
      return count;
   }
   public static void main(String args[]){
      int num =11;
      System.out.println("The number of set bits in 11 is ");
      System.out.println(set_bits_count(num));
   }
}

Đầu ra

The number of set bits in 11 is
3

Trên đây là phần triển khai của thuật toán Brian Kernighan. Một lớp có tên Demo chứa hàm astatic có tên là ‘set_bits_count’. Hàm này kiểm tra xem số có phải là 0 hay không, và nếu không, sẽ gán một biến có tên là "count" cho 0. Nó thực hiện phép toán "và" trên số và số giảm đi 1.

Tiếp theo, giá trị "count" sẽ giảm sau thao tác này. Cuối cùng, giá trị đếm được trả về. Trong hàm main, giá trị mà các bit đặt cần tìm được xác định. Hàm được gọi bằng cách chuyển số dưới dạng tham số. Các thông báo liên quan được hiển thị trên bảng điều khiển.