/**
* int 형 숫자를 비트로 변환할 경우 비트 개수 구하기
* 제약 사항: Integer.toBinaryString 또는 Integer.toString 함수 사용 불가
*/
public int getlen(int number) {
int bitCount = 0;
int bit = 1;
while(bit < number) {
bit = bit*2;
bitCount++;
}
return bitCount;
}
/**
* int 형 숫자를 비트로 변환 하기
* 제약 사항: Integer.toBinaryString 또는 Interger.toString 함수 사용 불가
*/
public boolean[] convertToBinary(int number) {
int bitCount = 0;
int bit = 1;
while(bit < number) {
bit = bin*2;
bitCount++;
}
bit = bit/2;
boolean[] binary = new boolean[bitCount];
bitCount--;
while(bitCount>=0) {
if(bit<=number) {
binary[binCount] = true;
number =number - bit;
bit = bit/2;
}else {
binary[binCount] = false;
}
binCount--;
}
return binary;
}
'Algorithm' 카테고리의 다른 글
중괄호 짝 맞추기 문제 풀이 (0) | 2023.10.15 |
---|---|
List and Stack (0) | 2018.10.20 |
string split and append space (0) | 2018.10.09 |
checkPrimeNumber (0) | 2018.10.09 |
팰린드롬 (palindrome) 구현 (0) | 2018.02.05 |