기록방

Java 코딩 테스트 교재 #2 본문

CS/알고리즘

Java 코딩 테스트 교재 #2

Soom_1n 2022. 9. 20. 18:37

Do it! 알고리즘 코딩 테스트 - 자바 편

 

http://www.easyspub.co.kr/20_Menu/BookView/500/PUB

 

www.easyspub.co.kr

 

2장 : 코드의 논리 오류를 어떻게 잡을까?


 💡 가장 뛰어난 오류 탐색 방법, 디버깅

코드에서 논리 오류를 찾을 수 있는 가장 최선의 방법은 ‘디버깅’

 

02-1 디버깅은 왜 중요할까?

디버깅(debugging) : 프로그램에서 발생하는 문법 오류나 논리 오류를 찾아 바로잡는 과정 (문법 오류는 컴파일러가 자동으로 찾아 주므로 테스트할 때 문제가 되지 않음)

 

디버깅의 중요성

많은 사람들이 조금의 차이로 코딩 테스트에 떨어지곤 했음 → 디버깅을 했다면 통과했을 것

많은 사람들이 문법을 배우는 과정에서 디버깅을 가볍게 생각하고 넘어감 하지만 디버깅은 코딩 테스트에 필요한 기술이고, 문제를 풀면서 반드시 해야하는 과정임

 

디버깅하는 법

코드에서 중단점(break point)을 설정하고, IDE의 디버깅 기능을 실행해 진행하면 됨

  • 구체적인 디버깅 방법
    • 코드에서 디버깅하고자 하는 줄에 중단점을 설정한다. 여러개도 가능하다.
    • IDE의 디버깅 기능을 실행하면 코드를 1줄씩 실행하거나 다음 중단점까지 실행할 수 있으며, 추적할 변숫값도 지정 가능하다. (Expressions 사용)
    • 변숫값 이외에도 원하는 수식을 입력해 논리 오류를 파악할 수 있다.
  • IntelliJ의 디버깅 방법
    • 코드 좌측의 줄번호 바로 오른쪽 클릭 : 빨간색 중단점 설정
    • 상단 실행 옆 벌레모양 버튼 클릭 or Shift+F9
      • F8 : 한 줄씩 실행
      • Shfit+F9 : 다음 중단점까지 실행

 

02-2 디버깅 활용 사례 살펴보기

코딩 테스트를 진행하며 실수하기 쉬운 4가지 오류

1. 변수 초기화 오류

  • 처음 초기화하지 않은 변수를 사용
  • 2번재 사용부터 초기화하지 않아 값이 누적되어 사용
    • 2번째 테스트 케이스부터 통과되지 않는다면 확인

 

2. 반복문에서 인덱스 범위 지정 오류

  • 초기값을 0부터 시작하지 않음
  • 반복문 최댓값 지정에 0을 빠뜨림
  • 반복문 최댓값 지정에 N인지 N-1인지 유의

 

3. 잘못된 변수 사용 오류

  • 출력 부분이나 로직 안에서 사용해야 하는 변수를 다른 변수와 혼동
    • 반복문안에서 반복 변수가 아닌 기존 변수 사용
    • 비슷한 이름의 변수 유의

 

4. 자료형 범위 오류 찾아보기

  • 데이터 계산 도중 지정한 자료형 범위를 넘어가는 경우
    • int에서 오버플로 발생후 음수로 변화 → long으로 선언해서 해결
💡 대부분의 코딩 테스트에서 long형으로 표현 가능하므로, 자료형은 처음부터 long형으로 선언하자

 

원본 노션 정리 글

 

728x90

'CS > 알고리즘' 카테고리의 다른 글

Java 코딩 테스트 교재 #4  (0) 2022.09.29
Java 코딩 테스트 교재 #3  (0) 2022.09.21
Java 코딩 테스트 교재 #1  (0) 2022.09.20
정렬 - 버블 정렬(Bubble Sort)  (0) 2021.04.26
정렬 - 삽입정렬(Insertion Sort)  (0) 2021.04.26