비트마스크
2019. 5. 27.
비트마스크란 정수로 집합을 나타내는 방법이다. 포함이 되어있을 땐 1로 포함 되어있지 않을 땐 0으로 나타낸다. 570 같은 경우엔 2진수로 표현하면 1000111010(2)이다. 인덱스로 나타내면 9 8 7 6 5 4 3 2 1 0 1 0 0 0 1 1 1 0 1 0 570 = {9, 5, 4, 3, 1}을 포함하고 있는 집합이라고 할 수 있다. 길이가 N인 이진수는 0~N-1까지의 부분집합을 나타낼 수 있다. 1부터 ~ N까지의 부분집합을 나타내고 싶다면 add, remove, check, toggle을 할때 어떤 수 X를 -1 해주도록 하자. * 어떤 수X가 집합에 포함되어 있는지를 검사할 때(check) N & (1