Algorithm - ETC CodingTest Tip

  • Java로 코딩테스트를 준비하며 부족한 부분을 공부하기 위해 정리하였음.
  • 코딩테스트 기타 정리내용임.

1. 시간복잡도를 잘 생각하여야 한다.

  • 특히 문제에 입력값 범위를 잘 보고 생각

  • 입력 값이 N이 1보다크고 100보다 작다이면서 1초이내에 수행해야 된다고 하면,

  • 3중 for문을 해도 Run Time Error가 안 생긴다.



2. 같은 배열에서 중복없이 for문을 돌릴 경우

  • i=0, j=i+1, l=j+1 로 하면 됨.



3. Scanner 와 BufferedReader, System out print 와 BufferedWriter 의 차이

  • 위의 함수들은 비슷한 기능을 하지만 속도와 효율성 면에서 차이를 보인다.

  • 전자의 함수들은 한 문자 한 문자 키보드의 입력에 따라 프로그램에 전달하지만

  • 후자의 함수들은 메모리 버퍼에 문자들을 보관하고 있다가

  • 버퍼가 가득 차거나 버퍼 플러시(flush)가 되는 순간 프로그램에 전달한다.

  • 즉, 이벤트 발생 시 건별로 데이터를 이동시키는 것보다 버퍼를 이용해 데이터의 이동을 최소화한 방식이 속도와 효율 면에서 유리하다.

  • 다만 Buffered 는 String 타입으로만 가능하다.






results matching ""

    No results matching ""