서로 다른 원소 n개의 원소 중 중복 원소를 선택하지 않고, 순서를 고려하여 r개를 일렬로 나열하는 수열nPr 개의 집합을 만들 수 있음n 팩토리얼에 (n - r )!을 나눈 만큼의 경우의 수n! / ( n - r )!ex) 5 P 3 = 5 4 3 2 1 / (
비트마스크를 사용하는 이유 각 정점에 도달했을 때 정점에 접근해야하는 값이 1개가 아닐 경우 각 데이터에 대한 접근을 했는 지 여부를 위해 배열을 사용할 때 점점 많은 차원의 배열이 필요하다. 각 정점에 저장되는 데이터가 26개일 때, 방문여부를 포함해서 27차원의
NextPermutation 현 순열에서 사전 순(오름차순)으로 다음 순열을 생성합니다. 즉 배열을 가장 작은 값으로 정렬한 뒤, 한 자리씩 swap하면서 출력합니다. 만약 숫자배열이라면 각각의 자리를 합해서 여러자리 수를 만든다고 했을 때 가장 작은 값부터 가장 큰
분리 집합, 서로소 또는 상호 배타조합, 유니온 파인드, disjoint - set 이라고 표현하는 집합들은 서로 중복 포함된 원소가 없는 즉 교집합이 없는 집합입니다.집합에 속한 하나의 특정 멤버를 식별자로하여 각 집합을 구분합니다. 이를 대표자라고 합니다.분리 집합
이진 탐색(이분 탐색, Binary Search)이란 정렬된 자료를 절반씩 쪼개어 탐색하는 탐색 방법을 이야기합니다. 이진 탐색은 모든 값을 탐색하는 일반 탐색과 달리 O(logN) 의 시간복잡도를 갖기 때문에 정렬된 자료에 대해 매우 빠른 탐색속도를 갖습니다.탐색 범
유향 그래프는 그래프 내의 각 정점간 단방향 간선만을 가지는 그래프입니다. 이러한 단방향 그래프에서 순환(싸이클)이 존재하지 않는 그래를 DAG라고 합니다.image사이클이 존재하는 단방향 그래프 → DAG 가 아님imageDAG 예시, 유향 그래프이면서 사이클이 존