자료구조,알고리즘/선형 자료구조2 2. 연결 리스트-remove(), removeAt(), indexOf() remove() 풀이 - value 데이터를 찾아서 노드를 삭제한다. - 삭제할 value 값이 없으면 null, 있으면 해당 값을 반환하면서 길이 줄이는 함수를 만든다. 1. while 반복문에서 current.data가 value와 일치하는 지점까지 찾는다. prev는 current의 뒷 노드를 가리킨다. 2. if문에서 this.head와 같을 경우에는 this.head를 current.next(current의 다음)으로 넘겨준다. 3. if문에서 this.head와 다를 경우에는 prev.next(이전 노드)를 current.next(다음 노드)로 넘겨준다. // remove(): value 데이터를 찾아서 노드 삭제 LinkedList.prototype.remove = function(value.. 2022. 8. 7. 1. 연결 리스트-Node, printNode(), append() 연결 리스트 (Linked List) - 각 노드가 데이터와 포인트를 가지며 한 줄로 연결되어 있는 방식으로 데이터를 저장하는 자료 구조 - 배열에 비해 자료 추가/삭제가 쉽지만 자료를 찾을 때는 무조건 순회하는 과정이 필요하다는 단점이 있다. (찾으려는 학생이 100만 명일 때는 배열이 훨씬 효율적) - Node() : data와 point(연결)를 가지고 있는 객체 노드 추가 / 삭제 //Node() function Node(data) { this.data = data; this.next = null; } //LinkedList(): head와 length를 가지고 있는 객체 function LinkedList() { this.head = null; this.length = 0; } // size().. 2022. 8. 7. 이전 1 다음 반응형