inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

3-K와 문제의 단순화

3-K 플러드필 질문입니다.

해결된 질문

307

namk

작성한 질문수 13

1

안녕하세요!

항상 강의 잘 듣고 있습니다.

3-J와 3-K에서 플러드필을 배우면서 플러드필을 '직전까지 하던 내용을 임시 큐에 저장하고 다음 dfs/bfs시 임시큐의 내용부터 이어서 작업하게 함으로서 새롭게 dfs/bfs를 수행하여 전체를 훑는 것보다 탐색하는 경우의 수를 줄이는 방법'이라고 이해하였습니다.

더 자세히 알고싶어 플러드필을 검색해보니 일반적인 예시는 큰돌님처럼 임시큐에 저장하는 것이 아니라 저희가 int 반환형 dfs와 유사하게 쓰고 있더라구요?

지난 강의에서였나 확실치는 않지만 플러드필이 아니라고 하는 사람도 있지만 이것은 플러드필이 맞다? 라고 하셨던 것 같은 기억이 있습니다.

일단 잘 써먹는게 중요하다라는 생각이지만 정리하자면 일반적으로 사람들이 말하는 int 반환형 dfs 같은 것이 기본적인 플러드필이고, 임시큐를 활용하는 것은 그냥 플러드필에 임시큐를 활용했다 정도로만 알면 될까요?

감사합니다.

C++ 코테 준비 같이 해요!

답변 1

1

큰돌

안녕하세요 ㅎㅎ

먼저 DFS 자체는 플루드필이 아닙니다.

첫번째. 컴포넌트들을 번호를 붙여가며 색칠하는 알고리즘

두번째, queue를 2개를 사용하거나 qSize를 통해 단계적으로 BFS하는 것을 얘기하는데 간혹 DFS를 기반으로 재귀적으로 탐색하며 단계적으로 탐색하게 하는 것도 플루드필이라고도 합니다.

+

int반환형 dfs = 플루드필

은 아닙니다.

 

감사합니다.

 

 

0

namk

답변 감사합니다!

1-E질문입니다!

0

517

2

3-L 틀린 부분 피드백 부탁드립니다.

0

820

2

1-A문제 순열재귀함수 질문입니다.

0

381

1

1-A 일곱난쟁이문제입니다

0

456

1

문제 풀 때 방향성에 대해

0

800

1

맥에서 vs code로 실행 관련 질문입니다

0

523

1

17071번 메모리 초과

0

386

1

1-C질문입니다!

0

419

2

2-B BFS 시간초과질문

0

629

2

1-O 13번 라인

0

441

1

6-J 놀이공원 문제 질문

0

381

1

구현관련 질문

0

482

1

강의 교안

0

319

1

실력을 더 올리고나서 강의를 보는 것이 맞을까요?

0

545

1

안녕하세요! 재귀함수에 관해서 질문드립니다

0

535

1

1-K

0

473

2

3-G번 질문있습니다.

1

473

3

3-C 실행 시간 질문드립니다.

0

493

1

4-A 문제 풀이 질문있습니다.

0

590

2

비트마스킹 연산자 "1의 보수" 영문 표기법

0

435

1

격자탐색 문제에서 BFS 시간복잡도 질문드립니다.

0

334

1

3-O go 함수 질문 드립니다.

1

446

2

4-A 출력 질문

0

303

1

1주차 1-O 질문드립니다

0

257

1