[자료구조] 배열 - 정의, ADT

Romy·2022년 4월 18일
0

📦 배열


  • 정의
    • 각 index에 대해 하나의 value가 연관된 <index, value> 쌍들의 집합
    • 같은 형의 변수를 여러 개 만드는 경우 사용
    • int score[10] → 10개의 int형을 score 이름으로 묶음
  • 특성
    • 순차적으로 메모리 할당
    • <인덱스, 원소 값> 쌍의 집합 (mapping)
    • 원소들이 모두 같은 타입 및 크기를 가짐
  • 배열 크기
    A[0] = Base
    A[1] = Base + 1 * sizeof (int)
    A[2] = Base + 2 * sizeof (int)

  • 인덱스
    • 순서를 나타내는 원소의 유한 집합
    • 집합 내에서의 상대적 위치 식별
    • 원소 수가 한정되어 있어 항상 마지막 원소 존재
    • 인덱스만으로 원하는 원소를 직접 접근
    • 인덱스가 n개로 표현되면 n차원 배열



📦 배열 ADT


  • object
    • <index, value> 쌍의 집합. index 부분은 0 ~ n-1로 나타냄
    • 1차원 배열의 index 부분은 { 0, 1, ... n-1 }
    • 2차원 배열의 index 부분은 { (0,0), (0,1), ,.. (0, n-1), (1, 0), ... (n-1, n-1)}
  • function
    • A ∈ Array, i∈ index, x ∈ item or value, j∈ integer
    • Array Create(j,list) = return j 차원의 한 array
    • Item Retrieve(A,i) = if ( i ∈ index) then return 배열 A 인덱스 i 값의 item
    • Array Store(A,i,x) = if (i ∈ index) then return 새로운 <i,x> 쌍이 삽입된 배열 A
profile
👩‍💻 IT Engineering

0개의 댓글