Java
 Computer >> コンピューター >  >> プログラミング >> Java

整数のセットビットをカウントするJavaプログラム


整数のセットビットをカウントするためのJavaコードは次のとおりです-

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));
   }
}

出力

The number of set bits in 11 is
3

上記は、BrianKernighanアルゴリズムの実装です。 Demoという名前のクラスには、「set_bits_count」という名前の静的関数が含まれています。この関数は、数値が0であるかどうかをチェックし、そうでない場合は、「count」という名前の変数を0に割り当てます。この関数は、数値と1だけデクリメントされた数値に対して「and」演算を実行します。

次に、この操作の後に「カウント」値がデクリメントされます。最後に、カウント値が返されます。 main関数では、セットビットを見つける必要がある値が定義されます。この関数は、数値をパラメーターとして渡すことによって呼び出されます。関連するメッセージがコンソールに表示されます。


  1. JSliderでエクステントを設定するJavaプログラム

    スライダーの範囲を設定するには、setExtent()メソッドを使用します。ノブがカバーする範囲のサイズを設定します- JSlider slider = new JSlider(JSlider.HORIZONTAL, 0, 100, 70); slider.setMinorTickSpacing(5); slider.setMajorTickSpacing(20); slider.setPaintTicks(true); slider.setPaintLabels(true); slider.setExtent(20); 以下は、JSliderで範囲を設定する例です- 例 package m

  2. 範囲内の未設定ビットをカウントするPythonプログラム。

    正の数とビットの範囲が与えられます。私たちのタスクは、範囲内の未設定ビットをカウントすることです。 Input : n = 50, starting address = 2, ending address = 5 Output : 2 2〜5の範囲に「2」の未設定ビットがあります。 アルゴリズム Step 1 : convert n into its binary using bin(). Step 2 : remove first two characters. Step 3 : reverse string. Step 4 : count all unset bit 0 start