자료구조란?
간단한 도서관 이라는 예를 가지고 생각해 보자.
자료 = 도서관의 무수한 책
구조 = 정리하는 규칙과 방법에 따라서 책장을 쌓고 정리한 구조.
도서관에 가서 책을 찾을때, 구조가 엉망이면 책을 찾을 수 있을까?
어떤 규칙으로 어떻게 책장을 배열했을 때 책을 가장 빠르게 찾고 정리할 수 있을까?
컴퓨터 과학에서 자료구조는 위와 거의 동일한 역할을 가진다.
결국 자료 구조는 데이터를 얼마나 효율적으로 저장 관리하여, 메모리를 효율적으로 사용할 수 있는가에 대해 연구하는 것이다.
자료구조 정의
자료구조란 데이터에 편리하게 접근하고, 변경하기 위해서 데이터를 저장하거나 조직하는 방법을 말한다. 문제 해결을 위해 여러가지 형태의 자료구조가 활용되고 그에 따라 또 다양한 알고리즘이 사용된다.
Data Structure is a collection of data types and set of rules with a format of organizing, managing and storage which can be used for efficient accessing and modification.
구조.
자료구조와 알고리즘
자료구조와 알고리즘은 떨어질 수 없는 관계다.
각각의 문제에 따라 쓰이는 자료구조와 알고리즘의 형태는 다르며, 자료구조를 구현하기 위해서 알고리즘을 이용한다.
자료구조 학습 목표
- 대표적인 자료구조의 구성과 원리 및 연산에 대한 이해
- 문제 해결을 위한 자료구조 활용 및 알고리즘 작성 기법 이해
- 알고리즘 시공간 복잡도 분석 기법 이해
- 자료구조 및 알고리즘의 구현 기법 이해.
[출처]
https://master-hun.tistory.com/60
https://intellipaat.com/blog/tutorial/python-tutorial/data-structures-with-python-cheat-sheet/
'소프트웨어자료 > 자료구조 & 알고리즘' 카테고리의 다른 글
Linked list (연결 리스트) 란 무엇인가? (0) | 2020.05.21 |
---|---|
[자료구조] 순환 알고리즘 (이원 탐색, 순열 생성) (0) | 2020.04.13 |
[자료구조] Binary search (with Recursion(재귀) pseudo code) 예제. (0) | 2020.03.17 |
[자료구조] Selection Sort ( with pseudo code) 해보기. (0) | 2020.03.16 |
[Algorithm] 알고리즘이란? (pseudo code 설명) (0) | 2020.03.16 |