혼자보는 개발 블로그

DataStructure - 단일 연결 리스트(Singly Linked List)란?

본 글은 『얄코의 가장 쉬운 자료구조와 알고리즘』을 참고하여 개인 학습 목적으로 이해한 내용을 정리한 것입니다. 한 요소가 다른 요소를 가리키는 형태로, 각 요소들은 각자의 데이터와 다음 요소의 참조를 가지고 있음. 메모리상에서는 배열과 달리 연속되지 않은 공간에 위치하여 참조를 통해 서로를 가리키는 형태임. 처리 성능 요소 접근: 요소가...

DataStructure - 정적 배열(Static Array)과 동적 배열(Dynamic Array)이란?

본 글은 『얄코의 가장 쉬운 자료구조와 알고리즘』을 참고하여 개인 학습 목적으로 이해한 내용을 정리한 것입니다. 정적 배열: 배열의 크기가 고정되어 있는 배열 동적 배열: 배열의 크기 만큼 요소가 모두 찬 상태에서 새로운 요소를 추가하려고 할 경우 더 넓은 메모리 공간을 동적으로 할당해주는 배열 단, 동적 배열도 내부적...

DataStructure - 배열 요소의 삭입 & 삭제

본 글은 『얄코의 가장 쉬운 자료구조와 알고리즘』을 참고하여 개인 학습 목적으로 이해한 내용을 정리한 것입니다. 배열 요소 삭제: 맨 앞 혹은 가운데에 위치한 배열 요소를 삭제할 경우 삭제된 요소 뒤에 위치해 있던 요소들을 앞으로 한칸 씩 당겨줘야함 → O(n) 배열 요소 삽입: 맨 앞 혹은 가운데에 새로운 배열 요소를 삽입할 경우 기존에...

DataStructure - 배열(Array)이란?

본 글은 『얄코의 가장 쉬운 자료구조와 알고리즘』을 참고하여 개인 학습 목적으로 이해한 내용을 정리한 것입니다. 배열은 메모리상에서 모든 요소가 연속적으로 배치되어 있는 자료구조를 의미함. 배열에 저장되는 요소에는 요소의 위치를 특정할 수 있는 인덱스 값이 부여됨. 인덱스 값은 0부터 차례대로 부여됨. 배열의 장점 메모리 효율성이...