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

How to build a project in eclipse with MAVEN build tool?

How to build a project in eclipse with MAVEN build tool? Step 1:- Install maven and set the path in my computer. Once path is set for java and maven you will get a screen With version installed in your system. Step 2:- Write a command mvn archetype:generate to build a project of your choice.This will give you a option to select a project from list. Step 3:- As soon as this operation will complete maven give you choice to choose project.Search for maven-archetype-webapp this will build a web project with basic structure. Step4:- Follow the below procedure to give name , version ,package ,artifact and group id of your choice. Step 5:- You will get screen with build success.Congrats your project is build in directory. Step 6: Go in the directory to check for the folders automatically created by maven. You will get pom file and src folder and the package folder. Step:-7  Move to the directry having pom.xml and run mvn ecl

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