/* Write a C++ program to implement all the functions of a dictionary (ADT) using hashing */
#include<iostream> #include<conio.h> #include<stdlib.h> using namespace std; # define max 10 typedef struct list { int data; struct list *next; }node_type; node_type *ptr[max],*root[max],*temp[max]; class Dictionary { public: int index; Dictionary(); void insert(int); void search(int); void delete_ele(int); }; Dictionary::Dictionary() { index=-1; for(int i=0;i<max;i++) { root[i]=NULL; ptr[i]=NULL; temp[i]=NULL; } } void Dictionary::insert(int key) { index=int(key%max); ptr[index]=(node_type*)malloc(sizeof(node_type)); ptr[index]->data=key; if(root[index]==NULL) { root[index]=ptr[index]; root[index]->next=NULL; temp[index]=ptr[index]; } else { temp[index]=root[index]; while(temp[index]->next!=NULL) temp[index]=temp[index]->next; temp[index]->next=ptr[index]; } } void Dictionary::search(int key) { int flag=0; index=int(key%max); temp[index]=root[index]; while(temp[index]!=NULL) { if(temp[index]->data==key) { cout<<"\nSearch key is found!!"; flag=1; break; } else temp[index]=temp[index]->next; } if (flag==0) cout<<"\nsearch key not found......."; } void Dictionary::delete_ele(int key) { index=int(key%max); temp[index]=root[index]; while(temp[index]->data!=key && temp[index]!=NULL) { ptr[index]=temp[index]; temp[index]=temp[index]->next; } ptr[index]->next=temp[index]->next; cout<<"\n"<<temp[index]->data<<" has been deleted."; temp[index]->data=-1; temp[index]=NULL; free(temp[index]); } main() { int val,ch,n,num; char c; Dictionary d; do { cout<<"\nMENU:\n1.Create"; cout<<"\n2.Search for a value\n3.Delete an value"; cout<<"\nEnter your choice:"; cin>>ch; switch(ch) { case 1:cout<<"\nEnter the number of elements to be inserted:"; cin>>n; cout<<"\nEnter the elements to be inserted:"; for(int i=0;i<n;i++) { cin>>num; d.insert(num); } break; case 2:cout<<"\nEnter the element to be searched:"; cin>>n; d.search(n); case 3:cout<<"\nEnter the element to be deleted:"; cin>>n; d.delete_ele(n); break; default:cout<<"\nInvalid choice...."; } cout<<"\nEnter y to continue......"; cin>>c; }while(c=='y'); getch(); } |
OUTPUT
MENU:
1.Create
2.Search for a value
3.Delete an value
Enter your choice:1
Enter the number of elements to be inserted:8
Enter the elements to be inserted:10 4 5 8 7 12 6 1
Enter y to continue……y
MENU:
1.Create
2.Search for a value
3.Delete an value
Enter your choice:2
Enter the element to be searched:12
Search key is found!!
Enter the element to be deleted:1
1 has been deleted.
Enter y to continue……y
hellow sir….really u did a g8 job..
hey this is’nt working..
hello thanks to person who have uploaded this program
few errors in the program….
corrections are..
1.’i’ used in the ‘for loop’ in case 1 must be declared outside switch case!
2. function ‘main’ must have return type.(void main)
3.’break’ command missing in case 2.
4.change #include to #include.
hello sir i need programs 4 binary tree using class templates
hi want source code for”10. Write a Java program to implement all the functions of a dictionary (ADT) using
Hashing.””if anybody hav can send me pleaseeeeeeeeee
could you help me in converting this code into spelling checker!
for example : i enter word, “acction” first it’ll change to correct word “action” and then show similar words starting from “act” prefix like actor etc
thanks dude…………..
please provide the exit in this program if I want to exit console application…?
plz send me dictionary in which we can add and read the data
Write a program in c++ to provide simple inventory system for a bookshop. It should hold the current list of stock, allow updates, additions, deletions and so on, and keep records of all books sold. It should be possible to display stock and sales reports.
Useful information. Fortunate me I discovered your site by accident,
and I am surprised why this coincidence didn’t came about earlier!
I bookmarked it.
This аrticle is genuinely a good one iit helps
new the web visitors, who are wishing foг blogging.