배열의 인덱스가 0부터 시작하는 이유

노을·2021년 2월 22일
0

컴퓨터과학

목록 보기
1/1

🔔 여러 자료들을 탐색하고, 개인 학습 용도로 정리한 포스트입니다.
잘못된 점이 있다면 피드백 해주시면 감사하겠습니다!

배경지식

인덱스 넘버링

선형 자료구조의 부분집합을 취하는 경우, 인덱스의 범위 지정의 일반적인 규칙

  • Half-open interval

    • 시작 수는 포함하고 마지막 수는 제외
  • Zero-based numbering

    • 첫 번째 인덱스는 0부터 시작한다.
  • 0<=index<10<=index<1

본론

배열의 인덱스가 0부터 시작하는 이유와 마지막 수를 인덱스로 포함하지 않는 이유

  • 메모리 주소가 0부터 시작하기 때문이다.

    • 배열도 포인터이기 때문에 인덱스가 0부터 시작하면 요소접근포인터 연산이 일치하게 된다.
    • 배열의 시작 인덱스나 구간에 대한 컨벤션은 언어의 구현에 따라 달라질 수 있다.
  • 배열은 메모리에 기록되었을 때 (처음 메모리 위치 + (인덱스 * 배열크기))로 이동한다.

    • 만약, 인덱스가 1부터 시작하게되면 0이라는 공간을 낭비하게 된다.
  • 다익스트라의 노트


참고

profile
카르페디엠

0개의 댓글