백트래킹

phoenixKim·2021년 9월 16일
0

알고리즘 기법

목록 보기
33/72

언제 백트래킹을...?

: 모든 원소를 탐색하면서, 조합으로 즉 특정 경우에 수를
조건으로 체크할 경우에 백트래킹을 사용하자.

  • 자신의 상태값을 유지한 후, 다른 인덱스의 상태값 변경 처리 완료 후,
    자신의 상태값을 원상태로 복귀해야 할때

공식

1) 종료 조건을 만듬
2) 상태값 on -> 재귀 -> 상태값 false

void backTr( v)
{
// 함수 종료문.
if(조건)
return;
v[i] = true;
backTr(v);
v[i] = false;

}


관련 문제

  • 프로그래머스 - 카카오 : 불량 사용자
  • 삼성 : 연구소
  • 프로그래머스 - 여행경로

반드시 필요한 것

  • dfs로 재귀 돌리므로
    1) 종료 조건이 필요하다.
    2) 재귀함수 호출 앞뒤에서 불변수 true - false 처리해서
    다음 인덱스 동작할때 문제 없게 해야 한다.
    -> 인덱스로 탐색할 컨테이너를 만들고, 찾아야 한다.
profile
🔥🔥🔥

0개의 댓글

관련 채용 정보