안녕하세요~! 오늘부터 자료 구조를 공부하면서 공부한 내용을 바탕으로 블로그에 글을 남기려 합니다. 설명과 코드 구현도 제 나름대로 최대한 자세히 그리고 쉽게 해 보도록 하겠습니다. 잘 될지는 모르겠네요 ㅎㅎ...
자료 구조를 시작하려면 자료구조가 무엇인지 알아보는게 당연하겠죠~?? 여러분들이 생각하는 자료 구조는 어떤 건가요? 혹시 아래와 같은 그림이 떠오르지 않나요?
자료라는 단어도 알고 구조라는 단어도 아는데 자료구조라고 하면 설명하기가 쉽지 않습니다. 어렴풋이 개념이 머릿속에 떠오르지만 누군가에게 설명할 정도로 명확하지는 않죠. 자료구조가 무엇인지 알려면 그 종류에 대해서 알아볼 필요가 있습니다. 그렇기에 자료구조를 설명하기에 앞서 자료구조에는 어떤 것들이 있는지 먼저 살펴보도록 하겠습니다.
자료구조는 일단 크게 선형 구조와 비선형 구조로 나눌 수 있습니다. 그리고 선형 구조에는 리스트, 스택, 큐, 테크가 있으며 비선형 구조에는 트리와 그래프가 존재합니다. 이처럼 자료구조는 1개만 존재하는 것이 아니라 우리가 사용하는 데이터에 따라 선별적으로 사용할 수 있는 것을 말합니다. 그리고 그 기준은 보통 아래와 같습니다.
이를 토대로 자료 구조를 정의내리자면 자료 구조란 프로그램에서 사용할 자료를 저장하는 방법과 자료 간의 관계 설정 그리고 그 사용 방법을 일컫는 말입니다. 그렇게 어렵지는 않죠? 충분히 이해할 수 있을 거라고 생각합니다. 이제부터는 우리가 코드를 구현하면서 실제로 어떻게 자료 구조를 만들 수 있는지 자세히 알아보도록 합시다. 개발 언어는 C++를 사용할 예정이며 에디터는 VS Code를 쓰도록 하겠습니다. 참고로 visual studio와 달리 VS Code는 C/C++를 바로 쓸 수는 없습니다. 몇가지 추가적인 설치 과정이 필요한데요. 이 부분에 대해서도 추가로 글을 남기도록 하겠습니다. 유튜브 영상도 앞으로 공부하면서 남겨 놓을 테니 많은 방문 부탁드립니다. 그럼 자료구조에 대한 본격적인 여정을 떠나보도록 하죠.
'C++ 자료구조' 카테고리의 다른 글
chapter 3. 덱(deque) (2) | 2021.02.21 |
---|---|
chapter 2. 큐(queue) (0) | 2021.01.18 |
chapter 1. 스택(stack) (0) | 2021.01.18 |