design class for linked list and include
constructor,destructor,insert option.
struct node
{
int node;
struct node &ptr;
}



design class for linked list and include constructor,destructor,insert option. struct node { in..

Answer / ayushi rastogi

#include<iostream.h>

struct node
{
int data; // D.O.B. would be better
node *ptr;// Pointer to next node
};

node *start_ptr = NULL;
node *current; // Used to move along the list
int option = 0;
class linklist
{
public:
linklist()
{
start_ptr=NULL;
}
~linklist()
{
start_ptr=NULL;
}

public:
void add_node_at_end()
{ node *temp, *temp2; // Temporary pointers

// Reserve space for new node and fill it with data
temp = new node;
cout << "Please enter the data: ";
cin >> temp->data;
temp->ptr = NULL;

// Set up link to this node
if (start_ptr == NULL)
{ start_ptr = temp;
current = start_ptr;
}
else
{ temp2 = start_ptr;
// We know this is not NULL - list not empty!
while (temp2->ptr != NULL)
{ temp2 = temp2->ptr;
// Move to next link in chain
}
temp2->ptr = temp;
}
}
public:
void display_list()
{ node *temp;
temp = start_ptr;
cout << endl;
if (temp == NULL)
cout << "The list is empty!" << endl;
else
{ while (temp != NULL)
{ // Display details for what temp points to
cout << "Data : " << temp->data << " ";

if (temp == current)
cout << " <-- Current node";
cout << endl;
temp = temp->ptr;

}
cout << "End of list!" << endl;
}
}
};
void main()
{
linklist l;
start_ptr = NULL;
do
{
l.display_list();
cout << endl;
cout << "Please select an option : " << endl;
cout << "0. Exit the program." << endl;
cout << "1. Add a node to the end of the list."
<< endl;
cout << "2. Display." << endl;

cout << endl << " >> ";
cin >> option;

switch (option)
{
case 1 : l.add_node_at_end(); break;
case 2 : l.display_list(); break;
}
}
while (option != 0);
}

Is This Answer Correct ?    3 Yes 0 No

Post New Answer

More OOPS Interview Questions

what is function over loading?

5 Answers  


Difference between new operator and operator new

2 Answers  


What is static in oop?

0 Answers  


what are the uses of C++

1 Answers  


tell about copy constructor

3 Answers   Siemens,






Why multiple inheritance is not allowed?

0 Answers  


Describe the difference between a Thread and a Process?

11 Answers   Siebel Systems,


Does c++ support multilevel and multiple inheritance?

9 Answers   IBS, Wipro,


what is pointers

7 Answers   Exilant,


What do you mean by binding of data and functions?

3 Answers  


What polymorphism means?

0 Answers  


Program to check whether a word starts with a capital letter or not.

1 Answers   Infosys,


Categories