카테고리 없음

잘 작성한 코드?

실수에서찾는중 2024. 2. 26. 13:03
  • 시간복잡도
    시간복잡도는 똑같은 결과를 얼마나 더 빠르게 처리할 수 있을지에 대한 척도가 되며, 입력 수가 많아질수록 속도가 기하급수적으로 늘어나기 때문에 알고리즘을 구현할 때 가장 중요하게 생각합니다.
  • 공간복잡도
    공간 복잡도는 실행하면서 메모리를 얼마나 사용하는지에 대한 척도입니다.
  • 가독성
    가독성은 일정 기준에 따라서 작성했는지에 대한 척도입니다. 코드는 항상 이해하기 쉽고 각 과정이 명확하게 드러나도록 해야 나중에 코드를 수정하거나 재사용하기 쉽습니다.

 

실수 줄이기

  1. 존재하지 않는 요소에 접근하는지 확인합니다.
    배열을 10개로 만들었다면 마지막 인덱스는 9입니다.
  2. 파이썬에서는 배열 슬라이싱 기능을 사용할 때 [시작위치(포함), 종료 위치(포함 안 함), 간격]이라는 걸 항상 기억합니다.
  3. '~보다 크다/ 작다' 조건으로 조건식을 만들 때, 조건식의 경계값을 제대로 체크하지 않아 의도하지 않게 동작하기도 합니다.
  4. 연산자 우선순위 문제도 확인합니다.
  5. 자료형 변환도 항상 유념해야 합니다.
    문자열 + 숫자 형태로 결합한다면 str() 함수로 미리 문자열을 만들어 합치는 것이 좋습니다.
  6. 최대치나 최소치 설정을 제대로 했는지 검사하는 습관도 중요합니다.
  7. 반복문이나 재귀 함수에서 종료 조건이 어긋나 영원히 프로그램이 끝나지 않는 일도 종종 일어납니다.
  8. 절대 0으로 곱하거나 나누지 마세요.