목록Computer Engineering/Data Structure (2)
Inor
[Data Structure] 배열을 이용한 Linked List(연결 리스트) 구현
- 배열을 이용한 연결 리스트 구현 연결 리스트는 보통 메모리를 동적으로 할당 받아서 데이터와 주소값을 갖고 있는 노드를 만들고, 그 노드를 이용해서 연결 리스트를 구성합니다. 그러면 메모리의 동적 할당이 안되는 상황에서 연결 리스트를 구현해야 하는 상황이라면 어떻게 해야 될까요? 저는 2개의 배열을 선언해서 하나는 데이터를 담고 다른 하나는 배열의 인덱스(데이터의 임시 주소값)를 담도록 하겠습니다. 위의 그림은 2차원 배열로 구성한 연결 리스트입니다. 여기서 행(가로 축, Row)은 하나의 노드로 표현됩니다. 노드에는 item과 next가 있습니다..
Computer Engineering/Data Structure
2017. 11. 12. 12:20
[Data Structure] 연결 리스트(LinkedList)
- 연결 리스트 연결 리스트(Linked List)는 배열과 같이 스택, 큐 등 자료 구조들의 기반이 될 수 있는 자료 구조입니다. 연결 리스트는 정보를 담고 있는 노드와 각 노드들의 논리적인 연결로 구성됩니다. 노드는 정보를 구성하는 데이터와 다음 노드와의 논리적인 연결을 지원하는 변수로 구성됩니다. 변수는 C 언어의 포인터와 같은 개념으로 정의 되고 변수에는 다음 노드의 주소값이 할당됩니다. head는 첫 node의 주소값을 갖고 있는 변수입니다. head는 연결 리스트의 각 노드를 방문하기 위한 첫 시작이라고 할 수 있습니다. head의 값을 잃어버린다면 그 리스트에 다시 접근하는 것은 불가능합니다. 그리고 이 연결 리스트는 메모리 어딘가에 표류하게 됩니다. 각 node는 자료 구조(연결 리스트)를..
Computer Engineering/Data Structure
2017. 11. 12. 00:43