Data Structure & Algorithms/Backtracking2 [Backtracking] Backtracking 맛보기 짬짬히 글을 써야하니 바로시작! 백트래킹은 최적화(optimazation) 혹은 브루트 포스(exhaustive search) 종류의 알고리즘으로 모든 경우의 수는 찾아가는 방법을 말한다. 허나 백트래킹의 시간복잡도는 지수승으로 증가하여 별다른 방법이 없을때 최후로 고려해야한다. 릿코드에서 말하길 백트랙킹을 사용할때는 인풋의 개수가 보통 알고리즘은 많은 문제를 풀어봐서 패턴을 학습할 수 밖에~ ... 예제학습 46. Permutations (https://leetcode.com/problems/permutations/) ==> 퍼뮤테이션? 순열 즉, 팩토리얼 이라고생각하면됨 다른 순서로 줄세울 수 있는 경우의 수 Companies Given an array nums of distinct integers,.. 2023. 2. 24. [DS]Chapter 02 재귀 -1 (Recursion) [02-1] 함수의 재귀적 호출의 이해 - 재귀함수의 실질적 이해: " Recursive 함수를 실행하는 중간에 다시 Recursive 함수가 호출된다면 함수의 복사본을 하나 더 만들어서 복사본을 실행하 게된다" * 즉, 완료 되지않은 함수 안에서 복사본을 만든 함수가 계속 호출된다.. 재귀함수를 정의하는데에 탈출 조건은 필수 !!! - 재귀함수 디자인사례 재귀함수는 자료구조나 알고리즘이 어려운 문제를 단순화하는데 사용되는 중요한 무기. 예로 factorial! [02-2] 재귀의 활용 - 피보나치 수열: 여기서 볼것은 함수의 호출 순서를 눈여겨보면 좋을것같다. * 함수안에 계속 실행되며 마치 트리의 전위순위같다. 이진 탐색 알고리즘의 재귀적 구현 2022. 7. 4. 이전 1 다음