#include<iostream>
using namespace std;
class node {
public:
int info;
node *next;
};
class list {
private:
node *head;
public:
list()
{
cout<<"Inside constructor"<<endl;
head = NULL;
}
void createlist(int data)
{
node *newnode = new node;
newnode->info = data;
if(head == NULL)
{
newnode->next = NULL;
head = newnode;
}
else
{
node *temp = head;
while(temp->next!= NULL)
{
temp = temp->next;
}
temp->next = newnode;
newnode->next = NULL;
}
//return head;
}
void reverseList()
{
node *temp;
node *temp1;
node *temp2;
temp1 = NULL;
temp = head;
while(temp!=NULL)
{
temp2 = temp->next;
temp->next = temp1;
temp1 = temp;
temp = temp2;
}
head = temp1;
//return temp1;
}
void display()
{
node *temp = head;
while(temp!= NULL)
{
cout<<temp->info<<endl;
temp=temp->next;
}
}
};
int main()
{
list *obj = new list;
obj->createlist(10);
obj->createlist(15);
obj->createlist(20);
obj->createlist(13);
obj->display();
cout<<"After Reverse List"<<endl;
obj->reverseList();
obj->display();
return 0;
}
output:
Inside constructor 10 15 20 13 After Reverse List 13 20 15 10
Komentar