input.txt로 인풋 넣고싶다?
System.setIn(new FileInputStream('src/DAY01/...');
해주고 System.in 쓰면 됨.
문자열 수정
- 더 빠른 문자열 수정을 위해서는 StringBuilder를 사용해서 하는 것이 좋다.
- String은 immutable class이고 StringBuffer와 StringBuilder는 mutable class.
- 또한 StringBuffer는 thread-safe하기 때문에 다중 쓰레드 환경을 사용하지 않는 알고리즘 테스트에서는 StringBuilder를 사용하는 것이 좋다.
연습방법
- 자료구조 구현을 빠르게 해라
- 이중연결리스트, 세그먼트트리등의 자료구조를 빠르게 구현할 줄 알아야 최적화에 힘쓸 수 있음.
- 기도메타
- 기출문제를 많이 풀어라
최적화
-
locality
for(int y →
for(int x →
[y][x]순으로 접근
→ cache miss 줄어든다 - locality 이용
-
for문 횟수 줄이기
- for문 쓰는것보다 쭉 쓰는게 빠르다