Find Kth Bit in Nth Binary String
Medium
Watch on YouTube ↗Solution
class Solution {
public char findKthBit(int n, int k) {
// O(n)
// O(n) - recursive stack
if(n==1)
return '0';
int len = (int)Math.pow(2,n) - 1;
if(k==(len/2)+1)
return '1';
else if(k<=len/2)
return findKthBit(n-1,k);
else {
char bit = findKthBit(n-1, len-k+1);
return bit=='0' ? '1' : '0';
}
}
}