일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 순차 리스트
- 프로그래머스
- 자료구조
- 빅-오
- 보간 탐색
- 알고리즘 성능분석
- 탐욕법
- 그리디
- 정렬
- 연결리스트
- 단체사진 찍기
- 순열
- LinkedList
- 약수의 총 합
- interpolation search
- list
- 양방향 연결 리스트
- 스택
- 유클리드 거리
- 알고리즘
- visited
- 큐
- java 정규표현식
- android
- 맨하탄 거리
- level2
- 수식트리
- 유클리디안 거리
- Java
- space complexity
- Today
- Total
목록순열 (2)
개발자로 살아남기

순열 순열 하나의 집합을 다른 순서로 뒤섞는 것 n개의 집합에서 순열의 총 개수는 n! ex) n = 5, 5x4x3x2x1 = 순열의 총 개수 nPr 수식 (P = Permutation 약자) 3P2 = 3! / (3-2)! = 6 / 1 = 6 (1, 2) / (1, 3) / (2, 1) / (2, 3) / (3, 1) / (3, 2) 총 6개 재귀로 구현 가능 자주 사용되는 swap, visited 방법으로 구현 완전탐색 문제에서도 자주 나올 수 있음 swap을 이용한 순열 배열의 값을 직접 교환해서 구함 Depth를 이용한 풀이 Depth와 r의 값이 같으면 모두 다 뽑았다는 것이므로 결과값 출력 순열 함수가 종료됐을 때 배열의 값을 다시 원상복구 해주어야 함 (그 다음 수와 다시 순열을 계산해야..

[Level 2] 단체사진 찍기 (Java) 프로그래머스의 Level2 문제인 단체사진 찍기를 풀었다. 나같은 경우 해당 문제를 아래와 같이 풀었었다. 알파벳 8자리에서 나올 수 있는 모든 경우의 수를 모두 구한다. (8! = 40320) 구한 경우의 수들을 조건에 맞는지 확인 후 조건에 만족할 경우 +1 해준다. import java.util.*; public class 단체사진_찍기 { public static void main(String[] args) { int n = 0; // String[] data = { // "N~F=0", // "R~T>2" // }; String[] data = { "M~C1" }; System.out.println(solution(n, data)); } static ..