C# 문법 2주차 - 컬렉션

Amberjack·2024년 1월 2일
0

C# 문법

목록 보기
14/44
post-thumbnail

🤔 컬렉션?

컬렉션은 자료를 모아 놓은 데이터 구조를 의미한다.

  • 컬렉션은 배열과 비슷한 자료 구조
  • 배열과는 다르게 크기가 가변적이다.
  • C#에서는 다양한 종류의 컬렉션을 제공한다.
  • 사용하기 위해서는 System.Collections.Generic 네임스페이스 추가

List

  • 리스트는 가변적인 크기를 갖는 배열
  • 리스트를 생성할 때는 리스트에 담을 자료형을 지정

List 선언하기

Dictionary

  • 딕셔너리는 키와 값으로 구성된 데이터를 저장한다.
  • 딕셔너리는 중복된 키를 가질 수 없으며, 키와 값의 쌍을 이루어 데이터를 저장한다.

Dictionary 선언하기

Stack

  • 스택은 후입선출(LIFO) 구조를 가진 자료 구조

Stack 선언하기

Queue

  • 큐는 선입선출(FIFO) 구조를 가진 자료 구조

Queue 선언하기

HashSet

  • 해시셋은 중복되지 않은 요소들로 이루어진 집합

HashSet 선언하기

배열과 리스트의 차이

배열과 리스트의 차이를 알고 적절히 사용하자!!

배열과 리스트

리스트는 동적으로 크기를 조정할 수 있어 배열에 비해 유연하게 데이터 구조를 선언할 수 있다. 하지만, 리스트를 무분별하게 사용하는 것을 좋지 않다.

  • 메모리 사용량 증가
    리스트는 동적으로 크기를 조정하기 때문에 배열보다 많은 메모리를 사용한다. 따라서, 많은 데이터를 다루는 경우 리스트는 성능 저하를 유발할 수 있다.
  • 데이터 접근 시간 증가
    리스트는 Linked List로 구현되기 때문에, 인덱스를 이용한 접근이 배열보다 느리다.
  • 코드 복잡도 증가
    리스트를 사용할 때는 데이터 추가, 삭제 등의 작업을 적절히 처리하는 코드를 작성해야 하기 때문에, 코드의 가독성과 유지 보수성이 저하될 수 있다.

0개의 댓글