How to find the length of the longest consecutive zeroes in the binary representation of a number in Java

1 Answer

0 votes
public class LongestZeroes {

    // Function to find the longest sequence of consecutive zeroes in binary representation
    public static int longestConsecutiveZeroes(int n) {
        int maxCount = 0;
        int currentCount = 0;

        while (n > 0) {
            if ((n & 1) == 0) { // Check if the least significant bit is 0
                currentCount++;
                maxCount = Math.max(maxCount, currentCount); // Update maxCount
            } else {
                currentCount = 0; // Reset count when a 1 is encountered
            }
            n >>= 1; // Right shift the number
        }

        return maxCount;
    }

    public static void main(String[] args) {
        int num = 11298; // 0010 1100 0010 0010

        System.out.println("Longest consecutive zeroes: " + longestConsecutiveZeroes(num));
    }
}


/*
run:

Longest consecutive zeroes: 4

*/

 



answered Sep 14, 2025 by avibootz
...