자료구조 시리즈 2편
2025. 4. 20. 11:13ㆍ개발이야기
728x90
반응형
배열(Array) 완전 정복
이전 글에서는 자료구조의 전체적인 개념을 다뤘습니다.
이번에는 가장 기본이자 중요한 자료구조, 배열(Array) 에 대해 자세히 알아보겠습니다.
1. 배열이란?
배열은 같은 타입의 데이터를 연속적으로 저장하는 자료구조입니다.
- 인덱스를 사용해 각 요소에 빠르게 접근할 수 있음
- 메모리 상에 연속된 공간에 저장됨
- 고정된 크기(생성 시 크기 결정)
2. 배열의 특징
항목 설명
접근 속도 | 매우 빠름 (O(1)) |
삽입/삭제 | 느림 (중간에 삽입/삭제 시 데이터 이동 필요) |
메모리 효율 | 크기 초과/부족 문제 발생 가능 |
타입 통일성 | 모든 요소가 같은 타입이어야 함 |
3. 배열 사용 예시 (C# 기준)
배열 선언과 초기화
// 방법 1: 크기만 지정
int[] numbers = new int[5];
// 방법 2: 값과 함께 초기화
int[] scores = { 90, 85, 70, 60, 95 };
// 방법 3: new 키워드와 함께 초기화
string[] fruits = new string[] { "사과", "바나나", "포도" };
배열 접근
Console.WriteLine(scores[0]); // 첫 번째 요소 출력 (90)
scores[2] = 75; // 세 번째 요소 값 수정
배열 순회 (for문)
for (int i = 0; i < scores.Length; i++)
{
Console.WriteLine(scores[i]);
}
배열 순회 (foreach문)
foreach (var score in scores)
{
Console.WriteLine(score);
}
4. 실생활 예시로 이해하기
- 배열 = 좌석 번호가 지정된 극장 의자
- 좌석 번호(인덱스)를 통해 특정 의자(데이터)에 바로 접근 가능
- 좌석을 추가하거나 삭제하는 것은 매우 번거로움 (구조 변경 필요)
5. 배열의 한계와 대안
문제점 대안
크기가 고정됨 | 리스트(List) 사용 (가변 크기) |
삽입/삭제가 비효율적 | 연결 리스트(Linked List) 사용 |
이번 글에서는 배열(Array) 의 개념, 특징, 코드 사용법까지 정리했습니다.
- 빠른 접근(O(1))이 최대 장점
- 삽입/삭제에는 약함
- 크기가 고정되어 있음
728x90
반응형
'개발이야기' 카테고리의 다른 글
자료구조 시리즈 4편 (0) | 2025.04.21 |
---|---|
자료구조 시리즈 3편 (0) | 2025.04.21 |
자료구조 시리즈 1편 (0) | 2025.04.20 |
[C#] WinForms 파일 관리 앱 최종 (0) | 2025.04.19 |
[C#] WinForms 파일 관리 앱 확장 6 (0) | 2025.04.19 |