0
목록에서 k 요소를 삭제하고 싶습니다. 아래처럼 (의사 코드)단일 링크 목록, k 요소 삭제
delete(L,k)
x <- L.head
i <- 1
while(i < k-1 AND x.next != NULL)
x<-x.next
i <- i+1
if(i = k-1 AND x.next != NULL)
if(x.next.next != NULL)
x.next <- x.next.next
else if(x.next.next = NULL)
x.next = NULL
내 목적은 k가 마지막 인 경우 k-1.next를 삭제하는 것입니다. k가 마지막이 아니면, k-1을 가리키고 k + 1을 가리킨다. 좋은 생각이야?
감사합니다. L. 헤드가 비어 있어야한다는 뜻입니까? – user3162968
그리고 다음 일 : if = k까지 루프가 계속 된 다음 k.next를 삭제하면 k + 1 요소가 삭제됩니다. – user3162968
빈 링크드 목록 (머리 만 포함하는 목록)을 만드는 한 가지 방법으로 L.head를 항상 비어있게 만들 수 있습니다. 그렇지 않으면 목록에서 유일한 항목을 삭제할 때 목록이 없습니다. 당신은 필요가 없습니다. – user2590835