이번에는 리스트ADT를 알아볼겁니다. 우선 ADT를 먼저 알아야합니다. 추상자료형(ADT)이란 데이터구조의 추상형을 말한다고 하는데....조금 더 쉽게 말하자면 어떤 자료형이 있으면 그 자료형에 대한 연산을 명세한 것을 ADT라고 부르는 것입니다. 따라서 다음을 명세한다고 정리할 수 있겠습니다 1. 저장된 데이터 2. 데이터에 대한 작업들 3. 작업 중 발생 가능한 에러 상황들 예를 들어서 주식거래 시스템 ADT를 짠다고 하면 1. 데이터 : buy/sell 주문들 2. 지원하는 작업들 buy, sell, cancel 등이 있을 수 있다. 3. 에러 상황들 : 존재하지 않는 주식에 대한 buy/sell 주문, 존재하지 않는 주문에 대한 cancel 정말 쉽게 얘기하자면 그리고 실제로 C언어를 공부하다보면..
이번에는 데이터 구조의 기초에 대해서 이야기해봅시다. 우리가 스택, 큐, 리스트, 집합 이러한 데이터 구조를 설계할 때 우선 기초적으로 쓰이는 재료가 있는데 그것이 바로 배열과 연결 리스트입니다. 배열을 여러분들이 c, python에서 배웠다시피 순차적인 기억 장소에 할당된 유한한 개수의 데이터 원소를 저장하는 방식입니다. 이러한 배열에는 1차원, 2차원, 3차원....... 등의 다차원 배열들이 있고 각 배열들은 행 우선 순서 즉, 저 차원 우선적으로 데이터 원소들이 메모리에 할당됩니다. 배열은 프로그래밍 언어를 공부하면서 꼭 거치게 되는 개념이니까 아시는 분들이 많을 거라고 생각합니다 하지만 연결 리스트는 처음 보는 분들이 더 많을 거라고 생각하는데요 원리를 알고 보면 크게 어렵지 않은 개념입니다:)..