Showing posts with label Single Linked List. Show all posts
Showing posts with label Single Linked List. Show all posts

Friday, 31 October 2014

Single Linked List - inserting a node at the end

Aim:
To insert a node at the end of the single linked list.

Program:
#include<stdio.h>
#include<conio.h>
#include<stdib.h>
struct slinkedlist
{
   int data;
   struct slinkedlist *next;
}
typedef struct slinkedlist node;
node *start = NULL;

node* getnode ()
  {
    node *newnode;
   newnode = (node*)malloc(sizeof(node));
printf("\nEnter a data");
scanf("%d",&newnode->data);
newnode->next = NULL;
rerun newnode;
  }

void creatlist (int n)
  {
    int i ;
    node *newnode;
    node *temp; 
for ( i=0; i<n; i++)
    {
       newnode = getnode ();
    if ( start == NULL)
      {
         start = newnode;
      }
    else
       {
         temp = start;
     while( temp->next != NULL)
         temp = temp->next;
         temp->next = newnode;
        }
  }
}

void insert_beg ()
{
node *newnode;
node *temp;
newnode = getnode ();
  if ( start == NULL)
    {
     start = newnode;
    }
else
{
  newnode->next = start;
  start = newnode;
}
}

void insert_end ()
{  
    int i ;
    node *newnode;
    node *temp; 
       newnode = getnode ();
    if ( start == NULL)
      {
         start = newnode;
      }
    else
       {
         temp = start;
     while( temp->next != NULL)
         temp = temp->next;
         temp->next = newnode;
        }
}

void main()
  {
    int n;
clrscr ();
  if ( start == NULL )
{
    printf("\n Enter Number of nodes to form single linked list:");
    scanf("%d",&n);
  creatlist ( int n);
}
else
printf("\n List is already created:");
printf("\n Enter 1 to insert at beginning Or Enter 2 to insert at end: ");
scanf("%d",&num)
  if( num == 1)
{
   insert_beg();
   printf("\n a node is inserted at beginning");
  }
else  if( num == 2)
{
   insert_end();
   printf("\n a node is inserted at end");
  }
else
{
printf("\n Entered a wrong choice");
}
}

Wednesday, 29 October 2014

Single Linked List - Inserting a node at the beginning

Aim:
To create a linked list and insert a node at beginning.

Program:
#include<stdio.h>
#include<conio.h>
#include<stdib.h>

struct slinkedlist
{
    int data;
    struct slinkedlist *next ;
  }
typedef struct slinkedlist node;
node *start = NULL;

node* getnode()
  {
    node *newnode;
    newnode = (node*)malloc(sizeof(node));
  printf("\n Enter data:");
  scanf("%d",&newnode->data);
newnode->next = NULL;
return newnode;
}

void createlist( int n )
  {
     int n;
     node *newnode;
     node *temp;
for( i=0;i<n;i++)
   {
      newnode = getnode ();
if( start == NULL)
   {
      start = newnode ;
    }
else
   {
      temp = start ;
while( temp->next != NULL )
    temp = temp->next;
    temp->next = newnode;
   }
}
}

void insert_beg ();
{  node *newnode;
    newnode = getnode() ;
   if ( start == NULL)
      {
         start = newnode;
      }
   else
      {
         newnode->next = start;
          start = newnode;
      }
  }     

void main ()
{
    int n,num;
    if( start == NULL)
{
   printf("\n Enter Number of nodes to creatlinked list:");
   scanf("%d",&newnode->data);
creatlist( n );
}
  else
printf("\n Linked list is created");

printf("\n Enter 1 to insert a node at beginning:");
scanf("%d",&num);
if( num == 1)
      insert_beg ();
else
   printf("\nYou not intrested to insert a node at beginning:");

}
      

Single Linked list - Createl ist

Aim:
To create a single linked list with specified nodes.

Program:
#include<stdio.h>
#include<conio.h>
#include<stdib.h>
struct slinkedlist
   {
      int data;
      struct slinked list* next;
  }
typedef struct slinked list* node;
node* start = NULL;

node* getnode()
  {
     node* newnode;
newnode =(node*)malloc(sizeof(node));
    printf("\nEnter a data:");
    scanf("%d",&newnode->data);
       newnode->next = NULL;
return newnode;
   }

void creatlist(int n)
  {
    int i;
    node* newnode;
    node* temp;
for( i=0;i<n;i++)
    {
       newnode = getnode();
if(start = NULL)
    {
       start = newnode;
     }
else
    {
       temp = start;
    while( temp->next != NULL)
    temp = temp->next;
    temp->next = newnode;
    }
  }
}
void main()
  {
    int n;
  if( Start = NULL)
    {
         printf("\n Enter Number of nodes to creat linked list:");
         scanf("%d",&n);
        creatlist(n);
     }
else
   printf("\n List is created");
}