Skip to main content

Delete node at a given position in Linked List

Delete node at a given position in Linked List



//delete node by position in linked list
 public Node deleteKeyAtPosition(Node head,int position)
 {
  
  Node temp=head;
  Node prevtemp=temp;
  int c=1;
  //if position is head
  if(position==1)
  {
   head=head.next;
   return head;
  }
  //position +1 because we have to go till that point
  while(c!=position+1)
  {
   if(c==position && position!=1)
   {
    prevtemp.next=temp.next;
    temp.next=null;
    temp=prevtemp;
   }
   prevtemp=temp;
   temp=temp.next;
   c++;
  }
  return head; 
 }

Comments

.

Popular posts from this blog

5 steps to add existing project to your GIT HUB repository [Windows]

this tutorial will tell you how to add existing project to your git hub account. Step1. Go to your GITHUB account. Create New repository  add repository Step2. Fill the required details. ( uncheck create read me ). Add details   Step 3. Open GIT shell from your desktop. Step 4. Go to the directory of your project using cd  “path of the project” Initialize git by using command   git init Add your files by using command   git add . Commit your files by command git commit –m ‘first commit’ commands to add git   STEP 5 Select your repository Add using command git remote add origin https://github.com/username/projectname.git Now push the project to git git push -u origin master push command

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 ; }