연관 배열

자료구조의 하나

연관 배열(associative array)은 자료구조의 하나로, 키 하나와 값 하나가 연관되어 있으며 키를 통해 연관되는 값을 얻을 수 있다. 연상 배열, 결합형 배열, (map), 사전(dictionary)이라고 부른다.

연관 배열은 일반적으로 다음의 명령을 지원한다.

  • 키와 값이 주어졌을 때, 연관 배열에 그 두 값을 저장하는 명령
  • 키가 주어졌을 때, 연관되는 값을 얻는 명령
  • 키와 새로운 값이 주어졌을 때, 원래 키에 연관된 값을 새로운 값으로 교체하는 명령
  • 키가 주어졌을 때, 그 키에 연관된 값을 제거하는 명령

언어 지원

편집

많은 스크립트 언어에서는 연관 배열을 언어적으로 지원한다. 예를 들자면 , 파이썬, PHP, 자바스크립트, 루비, 루아, Tcl, AWK 등의 언어에서 연관 배열에 대한 문법을 지원한다.

예시

편집

파이썬이나 JSON의 표기법을 사용하면 자료 구조는 다음과 같다:

{
    "Pride and Prejudice": "Alice",
    "Wuthering Heights": "Alice",
    "Great Expectations": "John"
}

키 "Great Expectations"에 대한 검색 작업을 수행하면 "John"을 반환하게 된다. John이 자신의 책을 반환하면 삭제 작업을 일으키며 Pat이 책을 체크아웃하면 삽입 작업을 일으켜서 다른 상태로 넘어가게 된다:

{
    "Pride and Prejudice": "Alice",
    "The Brothers Karamazov": "Pat",
    "Wuthering Heights": "Alice"
}

같이 보기

편집

외부 링크

편집