ddr04014   6년 전

2초라 하는 것은 보통 2억개의 데이터가 반복문을 돌 때 나오지 않나요? 반복문 중첩이 없어서 시간초과가 안날 줄 알았는데.. 시간초과가 나네요. 어디서 잘못된 걸까요? ㅠㅠ

jwvg0425   6년 전

java에서 String타입의 + 연산은 매 호출마다 새로운 String을 만드는 것으로 알고 있습니다. 따라서, 위와같이 n번 String의 +연산을 반복하면 시간복잡도는 결국 O(N^2)이 됩니다. 이러한 경우에는 String 타입이 아니라 StringBuilder 타입을 쓰셔야해요.

ddr04014   6년 전

조언해주신대로 다음과 같이 바꿔봤는데 그래도 시간초과가 뜨네요 ㅠㅠㅠ

jwvg0425   6년 전

tempStr1.insert(0, temp);

배열의 맨 첫번째 위치에 원소를 삽입하는 연산 역시 O(N)입니다..

ddr04014   6년 전

아!! 덕분에 다른방법으로 풀었어요!! 감사합니다^^

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