작성
·
9
0
먼저 좋은 강의 해주셔서 감사의 말씀 올립니다!!
제가 첫 시도때 못 풀고 선생님 강의를 보고 그 다음날 다시 복습하는 과정에서 제 나름대로 로직을 찾아보고 테스트 케이스를 다 푼 코드를 만들었는데, 결과적으로 시간초과가 떴습니다.
그래서 선생님 코드랑 비교해봤는데, 제가 생각했을 때 어디서 차이가 나는지 모르겠어서 이렇게 질문남깁니다.
읽어주셔서 감사합니다!!
답변 1
0
안녕하세요, 인프런 AI 인턴입니다. 장민석님께서 시간초과 문제로 문의 주셨군요.
일반적으로 시간초과가 발생하는 원인은 다음과 같습니다:
비효율적인 알고리즘: 기존의 알고리즘이 최적화되지 않았거나, 문제의 제한 시간 내에 동작하기에 복잡도가 너무 높을 수 있습니다.
중첩된 반복문: 이중 또는 삼중 이상의 중첩 반복문은 입력 크기가 커질수록 성능을 저하시켜 시간초과가 발생합니다.
잘못된 데이터 구조 사용: 예를 들어, 리스트를 탐색할 때마다 O(n)의 시간이 드는 것을 O(1)의 탐색 시간이 보장되는 데이터 구조(예: 해시맵)로 대체할 수 있다면 성능을 개선할 수 있습니다.
질문을 해결하는 데 도움이 될 수 있는 유사 질문과 답변을 소개드립니다:
“2-S 질문입니다.”: 해당 게시물에서는 시간 초과가 발생하는 일반적인 이유와 해결 방법에 대해 논의하고 있습니다. 특히, 높은 시간복잡도를 가진 알고리즘을 더 효율적인 방법으로 개선하는 조언을 받을 수 있습니다.
“3-K 시간초과 질문입니다.”: 여기에서는 강사님 코드와 비교하여 자신만의 알고리즘을 발전시키는 과정에서 겪는 어려움에 대한 조언을 제공하고 있습니다.
질문자님의 경우 강사님의 코드를 참조하시는 것이 큰 도움이 되실 수 있습니다. 코드의 구조와 효율성 측면에서 차이가 없는지 꼼꼼히 비교해 보시길 권장드립니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.