15688번 - 수 정렬하기 5
두 코드의 차이점은 StringBuilder()에 개행문자 삽입 방식을
sb.append(str + "\n")와 같이 한꺼번에 했느냐,
sb.append(str).append("\n")와 같이 append를 한 번 더 사용해 개행문자를 삽입했느냐 차이밖에 없습니다.
저는 append를 한 번 더 호출하므로 시간이 더 걸린다 생각해
한꺼번에 문자열로 sb.append(str+"\n")을 사용해 넣었는데, 실제론 append를 한 번 더 호출해 \n를 삽입하는게 더 빨랐습니다.
합치는 과정에서 다시 새 문자열을 생성하므로 더 오래걸리는 것인가요?
"합치는 과정에서 다시 새 문자열을 생성하므로 더 오래걸리는 것인가요?"
아마도 이게 원인이 맞는 것 같습니다. 객체를 생성하는 것은 상당히 무거운 작업에 해당하고, 심지어 문자열의 내용을 복사하는 시간까지 추가로 들어가기 때문에 결코 빠른 연산이라고 보기는 어려울 것 같습니다.
아하... 감사합니다
댓글을 작성하려면 로그인해야 합니다.
© 2026 All Rights Reserved. 주식회사 스타트링크 | 서비스 약관 | 개인정보 보호 | 결제 이용 약관 | 도움말 | 광고 문의 | 업데이트 노트 | 이슈 | TODO
한국어 | English (Beta)
AltStyle によって変換されたページ (->オリジナル) / アドレス: モード: デフォルト 音声ブラウザ ルビ付き 配色反転 文字拡大 モバイル
yoon6763 2년 전 0
두 코드의 차이점은 StringBuilder()에 개행문자 삽입 방식을
sb.append(str + "\n")와 같이 한꺼번에 했느냐,
sb.append(str).append("\n")와 같이 append를 한 번 더 사용해 개행문자를 삽입했느냐 차이밖에 없습니다.
저는 append를 한 번 더 호출하므로 시간이 더 걸린다 생각해
한꺼번에 문자열로 sb.append(str+"\n")을 사용해 넣었는데, 실제론 append를 한 번 더 호출해 \n를 삽입하는게 더 빨랐습니다.
합치는 과정에서 다시 새 문자열을 생성하므로 더 오래걸리는 것인가요?