자료구조란?
ㆍ논리적으로 정의된 규칙에 의해 데이터를 효율적으로 관리하기 위한 표현, 혹은 구조
ㆍ 여러 데이터들의 묶음을 저장하고, 사용하는 방법을 정의한 것
즉, 자료구조란 말 그대로
'데이터(Data)'의 '형태(구조)'를 의미한다.
자료구조와 알고리즘을 배우는이유
자료구조는 메모리를 어떻게 효율적으로 사용하며, 실행속도를 빠르고, 정확하게 처리할 수 있을까 를 궁극적인 목표로 두고 있다.
알고리즘은 이러한 자료구조의 목표를 바탕으로 문제를 해결하기 위해 정해진 일련의 절차나 방법을 공식화한 형태로 표현하는 것이다.
우리가 프로그램을 사용하는데 정확성이 떨어진다거나, 실행속도가 현저히 느리다면 더 정확하고 빠른 프로그램을 찾게 되는 것처럼 효율성이 높은 프로그램을 개발하기 위해 필요한 과정에서 일련의 방법을 제시해주는 가이드 역할을 하는 것이다.
자료구조와 알고리즘, 이 두개는 프로그래밍의 근본이라고 말하고 싶다.
우리가 초등학교를 다니면서 덧셈 뺄셈을 기본적으로 배우고 새로운 부분이 생기는 일없이 자주 사용하는 것처럼
자료구조와 알고리즘도 한번 배워만 두면 근본이 변하지 않고 꾸준하게 질문될 수 있기 때문에 한번만 잘 이해하는 것에 중점을 두도록 하자.
'TIL > 자료구조 & 알고리즘' 카테고리의 다른 글
[자료구조] 최소 신장 트리(Minimum Spanning Tree) (0) | 2024.03.28 |
---|---|
[자료구조] 그래프의 표현(인접행렬, 인접리스트) (0) | 2024.03.27 |
자료구조의 유형 (1) | 2024.03.22 |
파이썬으로 Heap 구현하기 (0) | 2024.03.19 |
파이썬으로 stack 구현하기 (0) | 2024.03.15 |