본문 바로가기

JAVA/기타3

Java Fast I/O 3 (feat. BOJ, String, StringBuilder) 앞선 포스트와 마찬가지로 사람들은 PS에서 속도를 개선하기 위한 방법 중 하나로 StringBuilder를 사용한다. StringBuilderabstract sealed class AbstractStringBuilder implements Appendable, CharSequence permits StringBuilder, StringBuffer { byte[] value; byte coder; boolean maybeLatin1; int count; private static final byte[] EMPTYVALUE = new byte[0]; AbstractStringBuilder() { value = EMPTYVALUE; } .. 2024. 7. 6.
Java Fast I/O 2 (feat. BOJ, StringTokenizer, String.split()) 이번 포스트에는 StringTokenizer에 대해 작성해보려고 합니다.PS에서 어떻게든 속도를 조금 더 높여보려고 사람들이 여러 방법을 사용하죠?그 중 하나가 StringTokenizer 입니다. 정말 StringTokenizer의 성능이 그렇게 우수할까? 직접 테스트 해봤습니다.package com.study.datastructrue.string;import java.util.StringTokenizer;public class DevidePerformTest { public static void main(String[] args) { String str = "one two three four five one two three four five one two three four five.. 2024. 7. 6.
Java Fast I/O (feat. BOJ, BufferedReader, BufferedWriter) BOJ JAVA 풀이에서 왜 BufferedReader, BufferedWriter 를 사용할까? 사람들은 PS 중 시간 효율을 조금이라도 올리기 위해서 Fast I/O를 사용한다.보통 I/O 속도는 Default I/O, Fast I/O, Custom Fast I/O 가 있다.찐 고수들은 종종 Custom Fast I/O를 사용하는 것을 볼 수 있는데 나는 기본적인 Fast I/O만 사용한다. (초보) Python 에서는 sys.stdin.readline, C++ 에서는 ios_base::sync_with_stdio(0), C에서는 fread() 등Java에서는 BufferedReader 나 BufferedWriter를 사용하는 것을 볼 수 있다. 그럼 왜 사용하는지 한 번 알아보자. BufferedR.. 2024. 7. 6.