[Data Structure] Array & Linked List(1) - Concept
2024. 3. 30. 16:57
CS/Data Structure
이번 포스팅에선 선형 자료구조의 배열과 연결 리스트에 대해서 알아보자. List(Sequence) ADT List 혹은 Sequence는 추상 자료형(Abstract Data Type)으로 Data의 중복을 허용하는 순서가 있는 Data의 모임이다. 추상 자료형은 기능만을 명세해 놓은 것이다. 이를 구현한 것이 자료구조가 된다. 이러한 List ADT는 다음과 같은 기능을 명세한다. 처음, 끝, 혹은 중간에 데이터를 추가 / 삭제하는 기능 데이터가 있는지를 체크하는 기능 모든 데이터에 접근할 수 있는 기능 이때 데이터를 쌍으로 저장하면 동적배열(Dynamic Array)이 각 데이터들을 포인터를 통해 연결하면 연결리스트가 된다. 배열 (Array) "배열"(Array)은 쌍으로 구성되며 메모리 상에서 연..
[Data Structure] 자료구조란?
2024. 3. 13. 17:51
CS/Data Structure
"자료구조"(Data Structure)란 데이터에 효율적인 접근을 위한 데이터의 구조, 관리, 저장을 말한다. 정확히 말하면 "자료구조"는 데이터의 모임으로, "데이터 간의 관계"와 "적용할 함수나 명령"을 의미한다. 예를 들어 자료구조 중 Queue를 생각해 보면, 데이터의 저장 및 삭제까지를 정의한다. 프로그래밍에서 적절한 자료구조는 효율적인 알고리즘을 수행할 수 있게 해준다. Queue 자료구조를 사용하면, BFS 알고리즘은 효율적으로 수행할 수 있다. 자료구조의 분류 자료구조는 크게 2가지로 분류된다. 원시 자료구조 (Primitive Data Structure) 복합 자료구조 (Non-Primitive Data Structure) 원시 자료구조 (Pritimitive Data Structure..