알고리즘 공부..시작..
https://www.youtube.com/watch?v=G4IIDyfoHeY
-엘리먼트와 엘리먼트 간의 연결(link)을 이용해서 리스트를 구현한 것
-컴퓨터에 자료를 저장하는 구조의 한 종류
-일렬로 연결된 데이터를 저장할 때 사용
-노드값에 데이터와 헤더값을 기본으로 데이터를 찾아가는 방식
-배열보다 속도가 늦다. 하지만 배열도 삽입,삭제를 배열로 구현하면 노드가 추가될때마다 배열을 첨부터 다시 선언해야한다는 단점이 있다.
길이가 정해지지 않은 데이터를 핸들링할 때 유리 하다.
-데이터를 중간에 삽입하고 싶으면 앞의 노드가 갖고있던 주소를 갖고오면된다.
-한 노드는 데이터(실제 데이터 공간), 헤더(주소 데이터공간)를 갖는다.
-한쪽 방향으로만 갈 수 있다.
-오직 다음 순서만 알 수 있기 때문에 검색을 할 때 가장 앞 노드부터 검색해 나아가야한다.
-이전노드의 주소를 저장하지 않는다.
-인접한 노드들이 뒤쪽 방향 뿐만아니라, 앞쪽으로도 연결되어 있어서 앞뒤로 자유롭게 움직일 수 있다.
-즉, 특정 한 노드를 살펴보면, 앞의 노드와 연결되는 링크와 뒤로 이어지는 노드를 연결하는 링크를 둘 다 가지고 있는 것이다.
-양 쪽 끝에 포인터를 저장한다.
-맨 끝 노드를 삽입할때 일부러 끝까지 찾아가는 번거러움을 줄일 수 있다.