TIL

슬기의 TIL - 2023.05.03

seulki_lim 2023. 5. 4. 15:20

매일 하나 이상의 알고리즘 문제를 풀고 있다.

github에 매일 하나 이상의 commit을 하고 있다.

다른 건 몰라도 꼭 지키려고 노력하고 있고, 잔디는 매일 심는 데 성공했다.

알고리즘 문제도 4일째 연속으로 풀고 있다.

4일이 10일이 되고, 한 달이 되고, 6개월, 1년이 되도록 해야지!

 

 

오늘은 비교적 쉬운 알고리즘 문제를 풀었다.

 

접미사 배열

풀이

 

반복문을 돌려 substring으로 앞에서 한 글자씩 잘라 모든 접미사를 배열에 저장했고,

sort를 하여 사전 순으로 하나씩 출력하도록 했다.

 

함께 알고리즘 풀이를 하는 팀원분이 메모리와 런타임이 얼마인지 물어보셨다.

 

 

16080KB와 208ms가 나왔다.

 

BufferedReader를 사용했는데, BufferedWritter도 있다면서 그것도 소개해주셨다!

그걸 적용하면 시간은 조금 짧아지는데, 메모리가 더 커진다고 하셨다.

 

궁금해서 나도 BufferedWritter를 적용해 제출해보았다 :)

 

16732KB와 188ms이 나왔다.

 

시간은 단축되고, 메모리 사용량은 늘었다.

 

지금은 다루는 데이터 양이 많지 않지만, 많은 데이터를 출력할 때는 버퍼를 사용하는 게 시간 단축에 도움이 될 것 같다.