요소의 마지막 어커런스 (예 : 정수)를 찾고이 노드를 하나만 제거 할 수 있습니까?) 목록을 통해 탐색?하나의 순회로 (단독으로) 링크 된 목록에서 요소의 마지막 어커런스 찾기 및 제거
0
A
답변
4
예.
순회 중 검색 할 값을 찾을 때마다 이전 항목을 기억하십시오. 순회가 완료되면 기억 된 마지막 항목은 제거 할 항목에 대한 링크를 가지며 제거를 수행하기에 충분합니다.
1
public void DeleteLastOccurenceOfKey(Node head, int key)
{
Node current=head;
Node prev=null;
Node temp=null;
while(current!=null)
{
if(current.next!=null && current.next.data==key)
{
prev=current;
temp=current.next;
}
current=current.next;
}
prev.next=temp.next;
}
DeleteLastOccurenceOfKey (head, 25);
에게 I/P : 5 10 15 25 35 25 40 O/P : 5 10 15 25 35 40