1. 컬렉션(Collection)의 개념
C#에서 컬렉션(Collection)은 모든 유형의 요소 그룹을 담을 수 있는 데이터 구조입니다. 다음은 C#에서 사용할 수 있는 다양한 컬렉션 유형입니다
2. 컬렉션(Collection)의 종류
배열(Array): 배열은 동일한 유형의 요소 그룹을 담을 수 있는 고정 크기 컬렉션입니다. 배열은 한 번 생성되면 크기를 변경할 수 없습니다. 배열은 인덱스를 사용하여 액세스하고 요소는 인접한 메모리 위치에 저장됩니다.
목록(List): 목록은 모든 유형의 요소 그룹을 포함할 수 있는 동적 컬렉션입니다. 배열과 달리 리스트의 크기는 런타임에 변경할 수 있습니다. 목록은 인덱스를 사용하여 액세스하며 요소는 비연속적인 메모리 위치에 저장됩니다.
딕셔너리(Dictionaries): 딕셔너리는 모든 유형의 요소 그룹을 보유할 수 있는 키-값 쌍 컬렉션입니다. 사전의 각 요소는 키-값 쌍으로 구성되며, 여기서 키는 해당 값에 액세스하는 데 사용됩니다. 딕셔너리는 고유 식별자를 사용하여 액세스할 수 있는 데이터를 저장하는 데 유용합니다.
집합(Sets): 집합은 모든 유형의 고유한 요소 그룹을 보유할 수 있는 컬렉션입니다. 세트는 중복이 없고 추적하려는 데이터를 저장하는 데 유용합니다.
큐(Queues): 큐는 선입선출(FIFO) 순서를 따르는 컬렉션입니다. 큐에 처음 추가된 요소가 가장 먼저 제거됩니다. 큐는 FIFO 데이터 구조가 필요한 알고리즘을 구현하는 데 유용합니다.
스택(Stack): 스택은 LIFO(선입선출) 순서를 따르는 컬렉션입니다. 스택에 마지막으로 추가된 요소가 가장 먼저 제거됩니다. 스택은 LIFO 데이터 구조가 필요한 알고리즘을 구현하는 데 유용합니다.
LinkedLists: LinkedList는 모든 유형의 요소 그룹을 보유할 수 있는 컬렉션입니다. 배열이나 리스트와 달리 링크된 리스트는 포인터를 사용하여 서로 연결된 노드에 요소를 저장합니다. 따라서 목록의 어느 위치에서든 요소를 효율적으로 삽입하고 삭제할 수 있습니다.
각 컬렉션 유형에는 고유한 장단점이 있으므로 특정 사용 사례에 적합한 컬렉션 유형을 선택하는 것이 중요합니다.
'공부 > C#' 카테고리의 다른 글
델리게이트(Delegate)란? (0) | 2023.03.05 |
---|---|
C#에서 Dictionary는 맵일까?, 해쉬 맵일까? (0) | 2023.03.05 |
ref와 out 키워드의 개념 및 차이 (0) | 2023.03.05 |
모노비헤이비어(MonoBehavior)란? (0) | 2023.03.05 |
C#의 구조체(struct)는 가비지 컬렉터의 대상인가요? (0) | 2023.03.05 |