FIFA-2022 Career Guide Free Tutorials Go to Your University Placement Preparation 
0 like 0 dislike
1.1k views
in Manipal University Jaipur B.Tech(CSE-III Sem) Data Structure Lab by Goeduhub's Expert (7.6k points)
edited by
Deletion of node at beginning in singly linked list

1 Answer

0 like 0 dislike
by Goeduhub's Expert (7.6k points)
edited by
 
Best answer

Deletion of node at beginning

Algorithm to Delete node from the beginning

Step 1: IF HEAD = NULL

Write UNDERFLOW
     Go to Step 5
    [END OF IF]

Step 2: SET PTR = HEAD

Step 3: SET HEAD = HEAD -> NEXT

Step 4: FREE PTR

Step 5: EXIT

Example

image example

Program 

#include <stdio.h> 

#include <stdlib.h>

struct node { 

  int data; // Data 

struct node *next; // Address }

*head; 

void createList(int n);

void deleteFirstNode(); 

void displayList();

int main() 

{ int n, choice;

printf("Enter the total number of nodes: "); 

  scanf("%d", &n); 

  createList(n); 

  printf("\nData in the list \n"); 

  displayList();

printf("\nPress 1 to delete first node: "); 

  scanf("%d", &choice); /* Delete first node from list */ 

  if(choice == 1) 

  deleteFirstNode(); 

  printf("\nData in the list \n"); 

  displayList(); 

  return 0; } 

/* * Create a list of n nodes */

void createList(int n)

{ struct node *newNode, *temp; int data, i;

head = (struct node *)malloc(sizeof(struct node)); /* * If unable to allocate memory for head node */

if(head == NULL) {

printf("Unable to allocate memory.");

  else

{

/* * In data of node from the user */ 

  printf("Enter the data of node 1: ");

scanf("%d", &data); 

 head->data = data; // Link the data field with data

head->next = NULL; 

// Link the address field to NULL 

 temp = head; /* * Create n nodes and adds to linked list */ 

  for(i=2; i<=n; i++) 

  { 

 newNode = (struct node *)malloc(sizeof(struct node)); /* If memory is not allocated for newNode */

if(newNode == NULL) {

printf("Unable to allocate memory."); 

  break; } 

  else { 

  printf("Enter the data of node %d: ", i); 

  scanf("%d", &data);

newNode->data = data; // Link the data field of newNode with data 

 newNode->next = NULL; // Link the address field of newNode with NULL

temp->next = newNode; // Link previous node i.e. temp to the newNode 

 temp = temp->next; } } 

  printf("SINGLY LINKED LIST CREATED SUCCESSFULLY\n"); } }  

 /* * Deletes the first node of the linked list */ 

void deleteFirstNode() { 

  struct node *toDelete;

if(head == NULL) {

printf("List is already empty."); } 

  else {

toDelete = head; head = head->next;

printf("\nData deleted = %d\n", toDelete->data); 

  /* Clears the memory occupied by first node*/ 

  free(toDelete); 

  printf("SUCCESSFULLY DELETED FIRST NODE FROM LIST\n"); 

  }

}

/* * Displays the entire list */ 

void displayList() { 

  struct node *temp; /* * If the list is empty i.e. head = NULL */

if(head == NULL) { 

  printf("List is empty."); }

else { 

 temp = head; 

  while(temp != NULL) {

printf("Data = %d\n", temp->data); // Print data of current node 

 temp = temp->next; // Move to next node } } 

Output

output


For more Manipal University Jaipur B.Tech CSE-III Sem Data Structure Lab Experiments Click here



  

Learn & Improve In-Demand Data Skills Online in this Summer With  These High Quality Courses[Recommended by GOEDUHUB]:-

Best Data Science Online Courses[Lists] on:-

Claim your 10 Days FREE Trial for Pluralsight.

Best Data Science Courses on Datacamp
Best Data Science Courses on Coursera
Best Data Science Courses on Udemy
Best Data Science Courses on Pluralsight
Best Data Science Courses & Microdegrees on Udacity
Best Artificial Intelligence[AI] Courses on Coursera
Best Machine Learning[ML] Courses on Coursera
Best Python Programming Courses on Coursera
Best Artificial Intelligence[AI] Courses on Udemy
Best Python Programming Courses on Udemy

Related questions

 Important Lists:

Important Lists, Exams & Cutoffs Exams after Graduation PSUs

 Goeduhub:

About Us | Contact Us || Terms & Conditions | Privacy Policy ||  Youtube Channel || Telegram Channel © goeduhub.com Social::   |  | 

 

Free Online Directory

...