728x90
반응형

Linked List 2

[Data Structure] Graph - 그래프

그래프는 자료의 관계도에 주로 사용되는 자료구조이다. 가장 대표적인 예는 역시 싸이월드 페이스북 친구이다. 나와 친구의 관계를 가중치1이라고 한다면, 친구의 친구는 가중치2 정도로 두고, 친구의 친구의 친구는 가중치3정도로 두는 것이다. 그러면 나를 기준으로 가중치가 1인 사람은 가장 가까운 사람들이고, 가중치가 2인 사람들은 그 다음으로 가까운 사람들이고, 3정도의 가중치는 내 친구와 그 사람의 친구가 서로 친구인 경우니까 그냥 남이다. Graph 그래프는 이전의 링크드리스트에서 보던 노드라는 개념을 가져와서 사용한다. 다른 점이 있다면, 실제로 그래프에서는 노드 대신 Vertex ( 점 ) 와 Edge ( 간선 ) 을 사용한다. ( 참고로 vertex의 복수형은 vertices 이다 ) 그래프에는 방..

Algorithm 2020.09.14

[Data Structure] Linked List - 링크드 리스트 ( 연결 리스트 )

링크드 리스트는 기본적인 노드 개념을 처음으로 학습하게 되는 자료구조이다. 링크드 리스트는 하나의 노드가 자신의 값과 다음 노드를 가리키는 포인터, 이 두 가지만 가지고 있다. 따라서, 한 번 지나간 노드는 이전 노드로 돌아갈 수 없다는 게 포인트이다. Linked List ( 링크드 리스트 / 연결 리스트 ) 위에서 언급했고, 위 그림에서 볼 수 있듯이 가장 기본이 되는 개념은 노드이다. 하나의 노드는 value와 next 두가지로 이루어져 있다. class Node { constructor(value) { this.value = value; this.next = null; } } 링크드 리스트는 이 노드의 연결로 이루어진 자료구조이다. 이 노드의 next에 새로운 노드를 넣어줌으로써 노드간에 연결이 ..

Algorithm 2020.09.10
728x90
반응형