qpoas   6년 전

String 배열이 51이 되서 시간초과인가요 아니면

sort하는 부분이 시간초과인가요..?

왜 시간초과가 나는지 모르겠습니다ㅠㅠ

djm03178   6년 전

String 객체는 immutable 하기 때문에, String을 += 하는 연산은 기존의 문자열과 덧붙일 문자열의 내용을 전부 복사하는 과정을 거쳐 새 객체를 만들어야 됩니다. 따라서, 길이가 같은 문자열이 N개 들어온다면 O(N^2) 시간이 소요되고 각 문자열의 길이만큼의 상수배가 곱해지면 매우 긴 시간이 됩니다.

qpoas   6년 전

감사합니다ㅎㅎ몰랐던 사실이네요!

댓글을 작성하려면 로그인해야 합니다.