| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- 백준 알고리즘
- 자바
- 모바일
- 백준
- Android
- Java
- 개발
- 금융IT
- BFS
- 언더라이터
- 다이나믹 프로그래밍
- 데이터베이스
- 멀티스레드
- CKLU
- IT
- 조합
- 현대오토에버 코딩테스트
- 안드로이드
- dp
- dfs
- 익명클래스
- 네트워크
- 재귀함수
- 삼성SW테스트
- 알고리즘
- 프로그래머스
- 익명객체
- 너비탐색
- backjoon
- 삼성sw문제
- Today
- Total
목록재귀함수 (3)
Limky 삽질블로그
안녕하세요. Limky 입니다. 이번시간에는 경우의 수 중에 순열에 대해서 알아보겠습니다. 헌데, 순열은 순열이지 왜 중복순열이라고 했을까요?? 당연 중복순열과 중복되지 않는 순열은 조금 다릅니다. 자기자신을 포함하냐 안하냐에 따라 순열과 중복순열로 구분합니다! 예제를 들어 설명해보겠습니다. 여기 구슬 3개가 있습니다. 1, 2, 3 중복이 없는 순열은 자기자신을 제외하고 모든 경우의 수를 생각하는 것입니다. 3개의 구슬중에 2개를 뽑는 경우의 수는 아래와 같습니다. 1, 2 1, 3 2, 1 2, 3 3, 1 3, 2 입니다. 총 3 X 2 = 6가지 이지요? 하지만!! 중복순열은 다릅니다. 자기자신을 포함하죠.... 똑같이 구슬 3개가 있습니다. 1, 2, 3 중복을 허용해서 뽑으면 아래와 같습니다...
백준 DFS 문제 #2667 - 단지번호붙이기 https://www.acmicpc.net/problem/2667 사용한 개념 1) DFS 저는 깊이탐색을 사용했습니다. 우선, 2차원 배열에서 0이 아닌 1인 경우에 깊이탐색을 시작하여 인접해있는 1을 모두 찾게합니다. 그 다음 다시 탐색을 이어가 0이 아닌 1인경우 다시 깊이탐색을 시작합니다. 여기서 달라지는 점은, 이미 탐색을 했다라는 표시를 하기 위해 임시 변수 값이 CNT의 값을 증가시켜 해당 값으로 매핑시켜 표시합니ㅁ다. 따라서.. 1 1 0 0 0 1 0 0 0 0 0 0 0 1 1 1 1 0 1 1 0 1 0 0 1 인 경우, 2 2 0 0 0 2 0 0 0 0 0 0 0 3 3 4 4 0 3 3 0 4 0 0 3 위와 같이 매핑되는 것입니다...
JAVA로 중복이 없고, 순서도 없는 조합(Combination) 구하기! 이번 시간은 JAVA로 중복이 없는 조합을 구하는 방법에 대해 알아보겠습니다. 우선 1,2,3 구슬이 있습니다. 3개중에 2개를 뽑는다고 했을때, 모든 경우의 수는 다음과 같습니다. 1,2 1,3 2,1 2,3 3,1 3,2 총 6가지 입니다. 팩토리얼 개념으로 접근하면 3*2 = 6 가지임을 알 수 있습니다. 이제 여기서 중복을 제거한 경우의 수만 따진다면, 1,2 1,3 2,3 총 3가지 입니다. 이를 조합이라고 합니다. 수학적인 기호로 나타내면! nCr 입니다. 즉, 중복이 없고, 순서도 없는 경우의 수(조합)입니다. n은 총 갯수, r 은 뽑아야 할 갯수 입니다. 저는 배열과 재귀함수를 통해 nCr에 대해서 구해보겠습니다...