-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathreservation.cpp
More file actions
141 lines (115 loc) · 2.58 KB
/
Copy pathreservation.cpp
File metadata and controls
141 lines (115 loc) · 2.58 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
#include "reservation.h"
reservationNode::reservationNode()
{
passID = "";
FLNO = "";
FDate = "";
FromA = "";
ToA = "";
seatClass = "";
bookedDate = "";
cancelledDate = "";
}
reservationNode::reservationNode(const string& input)
{
char * cstr = new char [input.length()+1];
strcpy (cstr, input.c_str());
// cstr now contains a c-string copy of str
char cID[32], cFLNO[32], cFDate[32], cFromA[32], cToA[32], cSeat[32], cBooked[32], cCancelled[32];
passID = strcpy(cID, strtok(cstr , ","));
FLNO = strcpy(cFLNO, strtok(NULL, ","));
FDate = strcpy(cFDate , strtok(NULL, ","));
FromA = strcpy(cFromA , strtok(NULL, ","));
ToA = strcpy(cToA , strtok(NULL, ","));
seatClass = strcpy(cSeat , strtok(NULL, ","));
bookedDate = strcpy(cBooked , strtok(NULL, ","));
cancelledDate = strcpy(cCancelled , strtok(NULL, ","));
}
void reservationNode::setPassID(string id)
{
passID = id;
}
void reservationNode::setFLNO(string flno)
{
FLNO = flno;
}
void reservationNode::setFDate(string date)
{
FDate = date;
}
void reservationNode::setFromA(string from)
{
FromA = from;
}
void reservationNode::setToA(string to)
{
ToA = to;
}
void reservationNode::setSeatClass(string seat)
{
seatClass = seat;
}
void reservationNode::setBooked(string booked)
{
bookedDate = booked;
}
void reservationNode::setCancelled(string cancelled)
{
cancelledDate = cancelled;
}
string reservationNode::getID()
{
return passID;
}
string reservationNode::getFLNO()
{
return FLNO;
}
string reservationNode::getFDate()
{
return FDate;
}
string reservationNode::getFromA()
{
return FromA;
}
string reservationNode::getToA()
{
return ToA;
}
string reservationNode::getSeatClass()
{
return seatClass;
}
string reservationNode::getBooked()
{
return bookedDate;
}
string reservationNode::getCancelled()
{
return cancelledDate;
}
void reservationNode::print()
{
cout << passID << " " << FLNO << " " << FDate << FromA << ToA << seatClass << bookedDate << cancelledDate << endl;
}
reservationHash::reservationHash(int bucket) {
this->buckets = bucket;
table = new list<int>[buckets];
}
void reservationHash::insert(vector<reservationNode> data) {
for(int i = 1; i < data.size(); i++){
int key = std::stoi(data[i].getID());
int index = hashingFunction(key);
table[index].push_back(key);
}
}
void reservationHash::output(vector<reservationNode> data) {
cout << "ID\t" << "FLNO\t" << "FDate\t" << "FromA\t" << "ToA\t" << "Seat Class\t" << "Booked Date\t" << "Cancelled Date" << endl;
for(int i = 0; i < buckets; i++) {
for(auto x : table[i]) {
data[i].print();
}
cout << endl;
}
}