A. 자료구조 개요
1. 자료구조의 기초
a. 자료구조란?
🌟 데이터를 조직화하고 저장하는 방법을 다루는 컴퓨터 과학의 분야
컴퓨터에서 효율적인 데이터 처리와 관련된 연산을 수행하기 위해 사용
💙 데이터?
문자, 숫자, 소리, 그림, 영상 등 실생활을 구성하는 모든 값
b. 자료구조의 선택 기준
- 자료의 처리 시간
- 자료의 크기
- 자료의 활용 빈도
- 자료의 갱신 정도
- 프로그램의 용이성
c. 자료구조의 특징
1) 조직화(Organization)
자료구조는 데이터를 구조화하여 저장하는 방법을 제공
데이터를 쉽게 관리하고 검색할 수 있도록 함
2) 효율성(Efficiency)
자료구조는 데이터에 대한 효율적인 접근 및 조작을 가능하게 함
적절한 자료구조를 선택함으로써 데이터 처리 작업의 성능을 향상
3) 추상화(Abstraction)
자료구조는 데이터를 더 쉽게 이해하게 해주는 추상화를 제공
4) 재사용성(Reusability)
자료구조는 다양한 응용 프로그램에서 재사용
이는 유사한 데이터 구조나 연산을 다른 문제에 쉽게 적용할 수 있음을 의미
5) 유연성(Flexibility)
자료구조는 다양한 형태와 기능
이는 데이터 처리 작업에 적합한 자료구조를 선택하고 조합하여 다양한 요구 사항을 충족할 수 있음을 의미
6) 알고리즘의 기반(Algorithm Foundation)
자료구조는 다양한 알고리즘의 구현과 실행에 필수적
적절한 자료구조를 사용함으로써 알고리즘의 효율성을 향상
7) 메모리 관리(Memory Management)
자료구조는 메모리를 효율적으로 활용하는 방법을 제공
이는 메모리 공간을 최대한 활용하면서도 데이터에 대한 효율적인 액세스를 보장
출처 : https://velog.io/@jisoung/%EC%9E%90%EB%A3%8C%EA%B5%AC%EC%A1%B0%EB%9E%80
자료구조란?
자료구조란 효율적인 접근 및 수정을 가능케 하는 자료의 로직, 관리를 의미한다. 효과적으로 설계된 자료구조는 실행시간 혹은 메모리 용량과 같은 자원을 최소한으로 사용하면서 연산을 수행
velog.io
'자료구조와 알고리즘 > Data Structure' 카테고리의 다른 글
[게임 프로그래머 입문 올인원] STL Container : hash_map (74강) (0) | 2024.03.25 |
---|---|
[게임 프로그래머 입문 올인원] STL Container : map (73강) (1) | 2024.03.22 |
[게임 프로그래머 입문 올인원] 트리 자료구조 : 레드 블랙 트리 (72강) (0) | 2024.02.22 |
[게임 프로그래머 입문 올인원] 트리 자료구조 : 이진 탐색 트리 (70, 71강) (0) | 2024.02.22 |
[게임 프로그래머 입문 올인원] STL Container : list와 iterator(67강) (0) | 2024.02.21 |