Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
78 changes: 78 additions & 0 deletions hashing.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
#include<iostream>
#include<conio.h>
#include<cstdlib>
#define max 10
using namespace std;
void insert();
void display();
int main()
{
int ch;
while(1)
{
cout<<"\n1.Insert Element\n2.Display\n3.Exit\n";
cin>>ch;
switch(ch)
{
case 1:
insert();
break;
case 2:
display();
break;
case 3:
exit(0);
default:
cout<<"Wrong Choice :)";
}
}
}
struct node
{
int data;
struct node *next;
};

struct node *head[max]={NULL},*c;

void insert()
{
int i,key,ele;
cout<<"\nEnter element\n";
cin>>ele;
i=ele%max;
struct node *newnode=new node();
newnode->data=ele;
newnode->next = NULL;
if(head[i]==NULL)
head[i]=newnode;
else
{
c=head[i];
while(c->next!=NULL)
{
c=c->next;
}
c->next=newnode;
}
}
void display()
{
int i;
for(i=0;i<max;i++)
{
cout<<"\n";
if(head[i]==NULL)
{
continue;
}
else
{
for(c=head[i];c!=NULL;c=c->next)
{
cout<<c->data<<"\t";
}
}
}

}
89 changes: 89 additions & 0 deletions queue.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
#include<iostream>
using namespace std;

struct node{
int data;
struct node *next;
node(int d)
{
data=d;
next=NULL;
}
};

struct queue{
struct node *front,*rear;

queue(){
front=rear=NULL;
}

void enqueue(int d)
{
node* temp=new node(d);
if(front==NULL)
{
rear=front=temp;
cout<<"\nElement enqueued is : "<<rear->data;
}

else{
rear->next=temp;
rear=temp;
cout<<"\nElement enqueued is : "<<rear->data;
}
}

void dequeue(){
struct node* temp;
if(front==NULL)
{
cout<<"\nQueue is empty (underflow)";
}

else{
temp=front;
front=front->next;

if(front==NULL)
rear==NULL;

temp->next=NULL;
cout<<"\nElement dequeued is : "<<temp->data;
free(temp);
}
}

void display(){
struct node* temp;
if(rear==NULL && front==NULL)
{
cout<<"\nQueue is empty";
}

else{
cout<<"\nElements in the queue are : ";
struct node *temp=front;

while (temp!=NULL)
{
cout<<temp->data<<" ";
temp=temp->next;
}


}
}
};

int main(){
queue q;
q.enqueue(10);
q.enqueue(20);
q.enqueue(30);
q.enqueue(40);
q.enqueue(50);
q.dequeue();
q.display();

}