Using Singly linked list of integer data to create and display and linear search , 3rd Sem Data Structure and Application lab 5a program
Singly Linked List (SLL) of Integer Data
a. Create a SLL stack of N integer.
b. Display of SLL
c. Linear search.
/* Singly Linked List (SLL) of Integer Data
a. Create a SLL stack of N integer.
b. Display of SLL
c. Linear search. */
#include <stdio.h>
#include <stdlib.h>
#include<malloc.h>
#include<string.h>
void display();
void stack();;
void insertfront();
void linear();
struct node{
int data;
struct node *next;
};
struct node *first=NULL,*last=NULL,*temp;
int main(){
stack();
}
}
void stack(){
int ch,n,i;
while(1){
printf("1.create\n 2.display\n 3.linear search\n 4.exit\n");
printf("Enter your choice");
scanf("%d",&ch);
switch(ch){
case 1:printf("Enter the number of node\n");
scanf("%d",&n);
for(i=0;i<n;i++)
insertfront();
break;
case 2:display();
break;
case 3:linear();
break;
case 4:exit(0);
break;
default:printf("Invalid choice\n");
}
}
}
void insertfront(){
struct node *temp;
int data;
printf("Enter the data :");
scanf("%d",&data);
temp=(struct node*)malloc(sizeof(struct node));
temp->data=data;
temp->next=first;
first=temp;
}
void display(){
struct node *p;
p=first;
if(p==NULL)
{
printf("List is empty\n");
return;
}
printf("data of list\n");
while(p!=NULL){
printf("%d\t",p->data);
p=p->next;
}
}
void linear(){
struct node *p;
int item,i=0,flag;
p=first;
if(p==NULL){
printf("List is Empty\n");
}else{
printf("\n Enter the node data ");
scanf("%d",&item);
while(p!=NULL){
if(p->data==item){
printf("Data found at %d\n",i+1);
flag=0;
return;
}else{
flag=1;
}i++;
p=p->next;
}
if(flag==1){
printf("item not found\n");
}
}
}
