(c++) 비트마스크(bitmask) 정리
비트마스크(bitmask) 0, 1로 이루어진 이진수를 자료 구조 형태로 사용하는 기법을 비트마스크라 한다. 비트 연산자를 이용한다면 일반 계산보다 빠른 연산이 가능하다. AND, OR, XOR로 특정 비트를 변경, 삭제, 추가가 가능하고, 쉬프트 연산을 통해서 곱셈, 나눗셈을 빠르게 연산가능하다. 정수 a, b를 AND 연산 a & b 정수 a, b를 OR 연산 a | b 정수 a, b를 XOR 연산 a ^ b 정수 a를 NOT 연산 ~a 정수 a를 왼쪽으로 b비트 시프트 a > b 비트마스크는 집합에 사용되는 경우가 많은데 {1, 2, 4} 배열일 경우 $$ 2^{1} + 2^{2} + 2^{4} = 1\;0110 $$ 원소 i는 2 ^ i 번째 비트가 1로 되어있다는 것으로 사용한다. 집합에서 사용..
2024. 1. 30.