tmdrnr99   3년 전

안녕하세요!

자바 프로그래밍에 입문하면서 백준 알고리즘 문제를 풀고 있는 1인 입니다.

문제를 풀면서 궁금한 점이 생겨서요!

항상 키보드로 값을 받을 때는  Scanner를 사용해 왔는데 ,

여기서 BufferedReader를 알게 되었습니다.

Scanner를 사용한 코드로 실행해보면 BufferedReader를 사용 할 때보다 

메모리도 많이 차지하고 속도 또한 느린 반면에 코드의 길이는 짧고,

BufferedReader를 이용하면 메모리는 적게 차지하고 속도도 빠른데, 

코드의 길이가 긴거같아서요..

제가 코드를 효율적으로 짠건지는 모르겠지만.. 어떤 코드가 더 효율적인 코드인가요?

1. 메모리를 적게 차지하고 속도는 빠르나 코드의 길이가 길다.(result1(), BufferedReader 사용)

2. 메모리를 많이 차지하고 속도도 느라나 코드의 길이가 짧다.(result2(),  Scanner 사용)


아 ,그리고 Scanner보다 BuffereRead가 속도나 메모리 소비가 적은 이유도 혹시나 알 수 있을까요..?

fbfbf1   3년 전

https://www.acmicpc.net/blog/v...

속도 측면에서는 BuffereRead가 알고 계신대로 훨씬 좋습니다.

아마 문제를 풀다보면 메모리초과보다는 시간초과 때문에 틀리는 경우가 더 많으니

BuffereRead 쓰는게 좋다고 봅니다.

fbfbf1   3년 전

개인적으로 코드의 길이는 별로 중요하지 않다고 생각합니다.

코드의 길이가 더 짧은데 메모리를 더 많이 차지하고 속도도 더 느리면 더 안 좋다고 생각합니다.

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