조합1 [JAVA] 비트 연산자를 이용하여 조합 & 부분집합 & 부분집합 여부파악 아래 배열을 계속 쓸 것이다. int[] arr = new int[]{1,2,3}; # 부분 집합 구하기 코드 생각 없이 그냥 부분 집합을 구한다고 하면 어떻게 구할까?? 1 2 3 1,2 1,3 2,3 1,2,3 그렇다면 비트 마스크로 한다면 아래처럼 될 것이다. 100 010 001 110 101 011 111 1 = 선택함을 의미 0= 선택하지 않음을 의미 예를 들어, 위 처럼 "011" 이라면 arr 의 1은 선택하지 않고 2와 3을 선택함을 의미한다. 그래서 "001" 부터 "111" 까지 루프를 도는 코드는 아래와 같다. for(int i=1;i 2020. 8. 30. 이전 1 다음