2013-11-25 2 views
1

나는 지금 연결 목록에 대해 배우고 있습니다. 링크 된 목록에서 세 번째 위치에 새 노드를 배치하는 Java에 대한 예제를 찾았지만 두 개의 추가 노드, 현재 및 이전을 사용하여 완료된 목록 중간에 특정 지점에 대한 삽입 만 보았습니다. 나는 또한 같은 것을 본 후에 .getNext와 같은 것을 본 적이 없다. 그래서 누군가이 코드 스 니펫의 각 부분이하는 일을 설명 할 수 있으며 어쩌면 현재와 이전의 노드를 사용하여 그것을 바꾸어서 비교하고 비교하는 방법을 이해할 수 있습니까? Elem은 삽입되는 노드에 주어진 이름이고, 당신이 그와 관련된 설명을 추가하면 현재와 이전을 인스턴스화 할 필요가 없습니다. 나는 이미 완료했다고 가정합니다.초급 Java - linkedlist의 중간에 노드를 삽입하는 방법 -이게 무슨 일을합니까?

elem.setNext(first.getNext().getNext()); 
first.getNext().setNext(elem); 
numberOfElems++; 

자세한 정보가 필요하면 알려주십시오.

답변

2
elem.setNext(first.getNext().getNext()); 

앞에서 말씀 드린대로 elem은 삽입되는 요소입니다. 위의 코드 행은 목록의 세 번째 요소에 대한 elemnext 참조를 설정합니다 (first.getNext().getNext()은 세 번째 요소를 참조 함).

first.getNext().setNext(elem); 

코드의 두 번째 라인은 신규 요소의 두 번째 요소의 next 참조 삽입 설정한다. 이제 새 요소가 이전 두 번째 요소와 세 번째 요소 사이에 삽입되어 목록의 세 번째 요소가됩니다.

마지막 줄의 코드는 요소 수를 증가시킵니다.

관련 문제