순열 (1) 썸네일형 리스트형 순열, 조합 알고리즘 (DFS-Backtracking) c++에는 algorithm 헤더에 순열을 구하는 next_permutation() 함수가 존재한다. 문제에 순열이나 조합이 나오면 이 함수로 쉽게 구할 수 있는데, 문제는 이 함수는 시간복잡도가 커서 N값이 커지면 시간 초과가 나는 것이다. BackTracking 그래서 순열, 조합을 다른 방식으로 푸는 방법을 찾았는데, 바로 백트래킹을 사용하는 것이다. 💡 백트래킹은 어떤 노드의 유망성, 즉 해가 될만한지 판단하고, 유망하지 않다고 결정되면 그 노드의 이전(부모)로 돌아가 다음 자식 노드로 가는 방식이다. 순열 구하기 Backtracking과 visit 배열을 사용하여 구현할 수 있다. (코드에 설명 첨부) #include #include #include #define MAX 5 // 1부터 5까지 .. 이전 1 다음