Tuesday, October 15, 2024

SYBSc (CS) Sem III : Data Structure Slip 17 Que - 1

     SAVITIBAI PHULE UNIVERSITY OF PUNE

S. Y. B.Sc. (Computer Science) Semester III

Practical Examination

      SUBJECT: CS-233 Practical course based on CS231 

/* Implement a list library (singlylist.h) for a singly linked list. Create a linked list, reverse it and display reversed linked list.*/

/// File name : "singlylist.c"

#include"singlylist.h"

void CreateList()

{

     struct node *NewNode = NULL;     

     NewNode = (struct node *) malloc(sizeof(struct node));     

     if (NewNode != NULL)

     {

        NewNode->Next = NULL;         

        printf("Enter the data value: ");

        scanf("%d", &(NewNode->data));

         

        if (Head == NULL)

        {

           Head = Last = NewNode;

        }

        else

        {

             Last->Next = NewNode;

             Last = NewNode;

        }

     }

}

void Display()

{

    struct node *temp = Head;

    printf("\n\nThe given Linked List is : ");

    while (temp != NULL)

    {     

          if (temp->Next != NULL)

              printf("%d ->", temp->data);

          else

              printf("%d", temp->data);

          temp = temp->Next;

    }

}

struct Node* ReverseLinkedList()

{

     struct Node *current = NULL, *reverse = NULL, *temp = NULL;     

     current = Head;     

     while(current != NULL)

     {

         temp = reverse;         

         reverse = current;         

         current = current->Next;         

         reverse->Next = temp;

     }     

    Head = reverse;                           

}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// File name : "singlylist.h"


#include<stdio.h>
#include<stdlib.h>

struct node{
        int data;
        struct node *Next;
}*Head, *Last;

void CreateList();
void Display();
struct Node* ReverseLinkedList();


//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// File name : "main.c"

#include"singlylist.h"

int main(int argc, char *argv[])
{
    int pos = 0, choice = 0;
    struct Node *rev = NULL;
    
    do
    {
            printf("\n\nEnter your choice: \n1. Create \n2. Display \n3. Reverse the List \n4. Exit \n\n");
            scanf("%d", &choice);
            
            switch(choice)
            {
                 case 1:
                      CreateList();
                      break;
                 case 2:
                      Display();
                      break;
                 
                 case 3:
                      ReverseLinkedList();
                      break;                        
                 default:
                      printf("Thank you visit again ....\n\n");
                      break;
            }
    }while(choice != 4);
  
    system("PAUSE");
    return 0;
}

No comments:

Post a Comment

SYBSc (CS) Sem III : Data Structure Slip 14 Que - 2

  SAVITIBAI PHULE UNIVERSITY OF PUNE S. Y. B.Sc. (Computer Science) Semester III Practical Examination       SUBJECT: CS-233 Practical cours...