엣지케이스 찾는법

2023. 7. 21. 10:16자바스크립트 정리

728x90
반응형

코딩 테스트에선 항상 문제가 되는 것이 엣지 케이스입니다.

보통 엣지 케이스는 생각하기 힘들거나 상식적이지 않은 입력으로 들어오는 경우가 많습니다. 시간복잡도 계산을 끝내고 그 안에 풀 수 있도록 로직을 작성했다면 그 다음으로 엣지 케이스에 대한 대비를 해야합니다.

엣지 케이스는 보통 다음과 같은 케이스가 많습니다.

  1. 입력 값의 크기가 굉장히 작은 케이스 (대부분의 입력 값이 최대값 언저리인 경우)
  2. 입력 값의 크기가 굉장히 큰 케이스 (대부분의 입력 값이 최소값 언저리인 경우)
  3. 입력 값의 범위가 넒은 케이스 (A는 최소값이고 B가 최대값인 경우)
  4. 음수 입력이 허용된 경우 음수만 입력받는 케이스
  5. 리스트를 입력 받을 때 값이 없거나 하나만 있는 케이스

또한 입력 값이 아니더라도 상황에 따른 엣지 케이스도 있습니다.

  1. 그래프에서 사이클(cycle)이 발생하는 경우
  2. 길찾기 문제에서 지그재그로 움직일 경우
  3. 부동소수점 오차

엣지 케이스는 문제마다 무궁무진합니다. 위 사례가 아닌 유형도 문제에 따라 발생할 수 있습니다. 그렇기 때문에 항상 문제 풀이하면서 엣지 케이스를 염두해둡시다. :)

질문 답변

질문 하기