[Data Structures] 자료구조란?
🗄️ 자료구조란?
자료구조는 데이터를 효율적으로 저장하고 관리하기 위한 구조를 의미한다. 데이터를 필요에 따라 체계적으로 구조화하여 처리하는 방법을 말한다.
자료구조는 데이터를 담는 ‘그릇’이라고 할 수 있다.
예를 들어 책장, 서랍, 상자처럼 물건을 담는 방식이 다양하듯이, 데이터를 담는 방식도 여러 가지가 있다.
🎯 자료구조의 필요성
자료구조가 필요한 이유는 다음과 같다.
-
효율적인 데이터 관리
- 데이터를 빠르게 찾고 저장할 수 있다.
- 메모리를 효율적으로 사용할 수 있다.
-
데이터의 체계적인 관리
- 데이터 간의 관계를 표현할 수 있다.
- 데이터를 논리적으로 구조화할 수 있다.
-
프로그램의 성능 향상
- 적절한 자료구조 선택으로 실행 시간을 단축할 수 있다.
- 복잡한 데이터를 효과적으로 다룰 수 있다.
🔍 자료구조의 분류
자료구조는 크게 선형 구조와 비선형 구조로 나눌 수 있다.
📈 선형 구조
데이터가 일렬로 나열된 형태의 자료구조다.
-
배열(Array)
- 같은 타입의 데이터를 연속된 메모리 공간에 저장한다.
- 인덱스를 통해 빠르게 접근할 수 있다.
-
연결 리스트(Linked List)
- 데이터가 포인터로 연결된 구조다.
- 삽입과 삭제가 용이하다.
-
스택(Stack)
- 후입선출(LIFO) 구조다.
- 가장 마지막에 들어온 데이터가 가장 먼저 나간다.
-
큐(Queue)
- 선입선출(FIFO) 구조다.
- 가장 먼저 들어온 데이터가 가장 먼저 나간다.
🌳 비선형 구조
데이터가 계층적 또는 망형으로 구성된 자료구조다.
-
트리(Tree)
- 계층적 구조를 표현한다.
- 이진 트리, 이진 탐색 트리 등 다양한 종류가 있다.
-
그래프(Graph)
- 노드와 간선으로 구성된 자료구조다.
- 네트워크 구조를 표현하는 데 사용된다.
Leave a comment