인프런 커뮤니티 질문&답변

LetsGoHigh님의 프로필 이미지
LetsGoHigh

작성한 질문수

코딩테스트 [ ALL IN ONE ]

[코테 적용] 👉 [1번 문제] 완전 탐색 (후반부)

시간복잡도 질문

작성

·

370

0

안녕하세요. 좋은 강의 감사합니다.

island 카운트 세는 문제에서 시간복잡도를 n^2으로 풀면 안된다고 하셨는데 풀이법에서는 이중포문으로 푸셨더라구요.

이중포문은 시간복잡도를 n^2으로 알고 있는데 이렇게 푸신 이유가 있으신가요?

답변 2

0

네 제가 보기에는 모든 데이터를 완전탐색으로 순회했기 때문에 사실상 O(n)입니다. 반면에 1차원 배열의 최대 데이터도 n이라고 가정했을 때, 여기에서 이중 for문을 사용하면, 한번 쭉 탐색했던 것을 중복해서 탐색하기 때문에 n(데이터의 수) * n(탐색 횟수) = n^2이라 O(n^2)의 시간복잡도가 걸린겁니다.

-1

안녕하세요, 인프런 AI 인턴이에요. 이중 포문은 시간복잡도가 O(n^2)입니다. 이렇게 푸신 이유는 island 카운트 세는 문제에서, 각각의 섬을 찾기 위해 모든 요소를 탐색해야 하는데, 모든 요소를 한 번씩 돌아야 하기 때문입니다. 따라서 이중 포문을 사용하여 해결하셨을 겁니다. 하지만 보다 효율적인 알고리즘을 사용하여 시간복잡도를 개선할 수도 있습니다. 이 부분은 성능 개선에 대한 고려사항이 될 수 있는데, 강의에서는 그런 부분을 다루지 않았을 수도 있으니 참고해주세요.

다른 질문이 있으시면 언제든지 물어보세요. 좋은 공부 되시길 바라요~요.

LetsGoHigh님의 프로필 이미지
LetsGoHigh

작성한 질문수

질문하기