List자료구조 - ① 리스트 자료구조의 이해 List 자료구조 📝 List 자료구조 목차 List 자료구조의 이해 배열기반 리스트: Array List | 소스 코드 연결 리스트: Linked List | 소스 코드 원형 연결 리스트: Circular Linked List | 소스 코드 양방향 연결 리스트: Double Linked List | 소스 코드 🔎 자료구조 전체 목차 보기 리스트 자료구조의 이해 먼저 리스트에 대한 대표적인 오해를 짚을 필요가 있다. "List는 연결 리스트를 의미한다." (X) List는 반드시 연결 리스트만을 뜻하지는 않는다. 배열을 기반으로 한 리스트도 리스트의 한 종류에 속한다. 순차 리스트: 배열을 기반으로 구현된 리스트 연결 리스트: 메모리의 동적 할당을 기반으로 구현된 리스트 리스트 자료구조의 공통된 특성 순.. Computer Science/Data Structures 4년 전
List 자료구조 - ④ 원형 연결 리스트 List 자료구조 📝 List 자료구조 목차 List 자료구조의 이해 배열기반 리스트: Array List | 소스 코드 연결 리스트: Linked List | 소스 코드 원형 연결 리스트: Circular Linked List | 소스 코드 양방향 연결 리스트: Double Linked List | 소스 코드 🔎 자료구조 전체 목차 보기 원형 연결 리스트의 이해 원형 연결 리스트란 단순연결 리스트는 마지막 노드가 NULL을 가리킴. 마지막 노드가 첫 번째 노드를 가리키면 원형 연결 리스트. 변형 원형 연결 리스트 일반적으로 원형 연결 리스트는 데이터 삽입 삭제의 효율성을 위해서 head가 아닌 tail을 사용한다. head를 사용할때 첫 번째 위치에 노드 삽입: n회 탐색 -> O(n) .. Computer Science/Data Structures 4년 전
List 자료구조 - ③ 단순 연결 리스트 List 자료구조 📝 List 자료구조 목차 List 자료구조의 이해 배열기반 리스트: Array List | 소스 코드 연결 리스트: Linked List | 소스 코드 원형 연결 리스트: Circular Linked List | 소스 코드 양방향 연결 리스트: Double Linked List | 소스 코드 🔎 자료구조 전체 목차 보기 연결 리스트의 이해 배열 기반 리스트의 특징 원하는 위치의 데이터에 바로 접근할 수 있다. 메모리의 특성이 정적이어서 전체 저장공간의 크기를 변경하는 것이 불가능하다. 원하는 위치에 데이터를 삽입 삭제하는 것이 불편하다. 연결 리스트의 특징 원하는 위치의 데이터에 바로 접근할 수 없다. 필요할때 마다 메모리를 할당 해제할 수 있다. 리스트의 중간지점에서 노드를 삽입하거.. Computer Science/Data Structures 4년 전
List 자료구조 - ② 배열기반 자료구조 List 자료구조 📝 List 자료구조 목차 List 자료구조의 이해 배열기반 리스트: Array List | 소스 코드 연결 리스트: Linked List | 소스 코드 원형 연결 리스트: Circular Linked List | 소스 코드 양방향 연결 리스트: Double Linked List | 소스 코드 🔎 자료구조 전체 목차 보기 배열 기반 리스트 배열 기반 리스트의 단점 배열의 길이가 초기에 결정되어야 한다. 변경이 불가능하다. 삭제의 과정에서 데이터의 이동(복사)가 매우 빈번히 일어난다. 배열 기반 리스트의 장점 데이터의 참조가 쉽다. 인덱스 값을 기준으로 어디든 한 번에 참조가 가능하다. 배열 기반 리스트의 오해 보통 리스트라고 하면 연결 리스트만을 떠올리고, 배열 기반 리스트는 불필요하다.. Computer Science/Data Structures 4년 전