Skip to main content

Deleting a Node by passing data in LInkedList

Deleting a Node by passing data in LInkedList:-

The node can be deleted by passing the data value in a function.Here we have three pointers one to traverse the list other to point current node and third one to point previous of current node.



//deleting a given key
 public Node deleteKeyNode(Node head,int key)
 {
  //traverse pointer
  Node temp=head;
  //previous pointer
  Node prevtemp=temp;
  
  while(temp!=null)
  {
   //when key is at head position
   if(key==head.data)
   {
    head=head.next;
    System.out.println("head is deleted");
    return head;
   }
   
   //when key is at any position other than head
   if(temp.data==key)
   {
    prevtemp.next=temp.next;
    temp.next=null;
    temp=prevtemp; 
   }
   prevtemp=temp;
   temp=temp.next;
  }
  return head;
 }

Comments

.

Popular posts from this blog

Insertion Sort in JAVA

What is insertion sort?

It is a sorting technique that is based on the partitioning of array into two parts like selection sort, sorted and unsorted.

The process is:-

compare adjacent elements.
if(left > right)
Swap the element
{
check for sorted array whether it is still in sort manner(put j=i and loop in until j is not equal to zero)
- No
check for if(right<left)
swap
do it until at the end of position.
}

Implementation:-

Underline eleemnts are part of sorted arrayinside main array loop 142710333519424 (141027333519424 (here sorted array is distorted hence sorting has been done inside the loop) inside sorted array loop101427333519424 inside main array loop101427333519424 inside main array loop 101427333519424 inside main array loop101427333519424 inside sorted array loop 101427193335424 inside sorted array loop 101419273335424 inside main array loop 101419273335424 inside main array loop 101419273335424 inside sorted array loop101419273343542 inside…