[백준 1269] 대칭 차집합 - 자바(java)
·
알고리즘
문제 이해A 에서 AB 합집합 빼기B에서 AB 합집합 빼기 알고리즘이번에는 100_000_000의 값이 있으므로 최대한 시간을 줄여야 할 것 같다. 기본적으로 백준에서 2초의 시간이 걸린다는 것은 시간 복잡도 최대 연산 횟수O(N)1억번O(N^2)1만번 O(N^3)500번O(2^N)20번정도이므로 우리는 O(N)인 알고리즘을 생각해야한다. 나는 가장 먼저 떠오른 알고리즘이 Hash알고리즘이었다.이유는 일단 같은 값만 체킹하는 것이고 그럴 때에는 O(N)으로 확인할 수있는 알고리즘이 Hash 알고리즘이기 때문이다. 풀이 hashset은 똑같은 숫자는 집어넣지 않으므로 총 집합의 사이즈에서 - HashSet의 사이즈를 뺄 경우 합집합의 사이즈가 나온다. A 집합의 개수 - A&B의 합집합(A집합의 개수+B..