style: format code

This commit is contained in:
yanglbme
2019-08-21 10:10:08 +08:00
parent abc0d365de
commit 69ddc9fc52
101 changed files with 3154 additions and 2984 deletions

View File

@@ -1,117 +1,134 @@
#include<iostream>
#include<math.h>
#include <iostream>
#include <math.h>
using namespace std;
struct Node {
struct Node
{
int data;
struct Node *next;
} *head[100],*curr;
} * head[100], *curr;
void init() {
for(int i=0;i<100;i++)
head[i]=NULL;
void init()
{
for (int i = 0; i < 100; i++)
head[i] = NULL;
}
void add(int x,int h) {
void add(int x, int h)
{
struct Node *temp = new Node;
temp->data = x;
temp->next = NULL;
if(!head[h]) {
if (!head[h])
{
head[h] = temp;
curr = head[h];
}
else {
curr=head[h];
while(curr->next)
else
{
curr = head[h];
while (curr->next)
curr = curr->next;
curr->next = temp;
}
}
void display(int mod) {
void display(int mod)
{
struct Node *temp;
int i;
for(i=0;i<mod;i++) {
if(!head[i]) {
cout<<"Key "<<i<<" is empty"<<endl;
for (i = 0; i < mod; i++)
{
if (!head[i])
{
cout << "Key " << i << " is empty" << endl;
}
else {
cout<<"Key "<<i<<" has values = ";
else
{
cout << "Key " << i << " has values = ";
temp = head[i];
while(temp->next) {
cout<<temp->data<<" ";
temp=temp->next;
while (temp->next)
{
cout << temp->data << " ";
temp = temp->next;
}
cout<<temp->data;
cout<<endl;
cout << temp->data;
cout << endl;
}
}
}
int hash(int x,int mod) {
return x%mod;
int hash(int x, int mod)
{
return x % mod;
}
void find(int x,int h) {
struct Node *temp =head[h];
if(!head[h]) {
cout<<"Element not found";
void find(int x, int h)
{
struct Node *temp = head[h];
if (!head[h])
{
cout << "Element not found";
return;
}
while(temp->data !=x && temp->next)
temp=temp->next;
if(temp->next)
cout<<"Element found";
else{
if(temp->data == x)
cout<<"Element found";
while (temp->data != x && temp->next)
temp = temp->next;
if (temp->next)
cout << "Element found";
else
{
if (temp->data == x)
cout << "Element found";
else
cout<< "Element not found";
cout << "Element not found";
}
}
}
int main(void) {
int main(void)
{
init();
int c,x,mod,h;
cout<<"Enter the size of Hash Table. = ";
cin>>mod;
int c, x, mod, h;
cout << "Enter the size of Hash Table. = ";
cin >> mod;
bool loop = true;
while(loop) {
cout<<endl;
cout<<"PLEASE CHOOSE -"<<endl;
cout<<"1. Add element."<<endl;
cout<<"2. Find element."<<endl;
cout<<"3. Generate Hash."<<endl;
cout<<"4. Display Hash table."<<endl;
cout<<"5. Exit."<<endl;
cin>>c;
switch(c) {
case 1:
cout<<"Enter element to add = ";
cin>>x;
h = hash(x,mod);
h = fabs(h);
add(x,h);
break;
case 2:
cout<<"Enter element to search = ";
cin>>x;
h = hash(x,mod);
find(x,h);
break;
case 3:
cout<<"Enter element to generate hash = ";
cin>>x;
cout<<"Hash of "<<x<<" is = "<<hash(x,mod);
break;
case 4:
display(mod);
break;
default:
loop = false;
break;
while (loop)
{
cout << endl;
cout << "PLEASE CHOOSE -" << endl;
cout << "1. Add element." << endl;
cout << "2. Find element." << endl;
cout << "3. Generate Hash." << endl;
cout << "4. Display Hash table." << endl;
cout << "5. Exit." << endl;
cin >> c;
switch (c)
{
case 1:
cout << "Enter element to add = ";
cin >> x;
h = hash(x, mod);
h = fabs(h);
add(x, h);
break;
case 2:
cout << "Enter element to search = ";
cin >> x;
h = hash(x, mod);
find(x, h);
break;
case 3:
cout << "Enter element to generate hash = ";
cin >> x;
cout << "Hash of " << x << " is = " << hash(x, mod);
break;
case 4:
display(mod);
break;
default:
loop = false;
break;
}
cout<<endl;
cout << endl;
}
/*add(1,&head1);
add(2,&head1);