Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

You are tasked with building an automatic appointment reservation system for a very busy heart surgeon in the city. The system is going to work

You are tasked with building an automatic appointment reservation system for a very busy heart surgeon in the city. The system is going to work as follows:

a. The patient requests for an appointment time. The system looks through the list of appointments and if there are no appointments scheduled within 10 minutes either way of the requested time, then that appointment is added to the list of appointments along with the patient ID. Otherwise, the patient is given the next available time automatically that is not within 10 minutes of any other scheduled appointment.

b. At the appointed time, the appointment is marked as serviced and deleted from the list of appointments.

You must use an AVL Tree to implement this appointment system. The reservation system should run as follows:

1. It should run for a total of 12*25*60 minutes.

2. At each time instant, there is a 10% probability that a new request comes in. If a new request comes in, generate a random number between the current time and (current time + 1000) for the value of the patient request time. A unique patient ID is also generated and the (appointment time, patient ID) is added as a (key, value) pair to the AVL Tree.

3. To do the 10 minute check, what you can do is that during insertion, on the path from the root while looking for a place to insert the new node, if any node is encountered that is within 10 minutes of the desired time, then you know that the 10 minute check has failed. In that case, use the find_range() function of your AVL Tree class to automatically find the next available time and add it to the AVL Tree.

4. After every 100 time instances, display the number of appointments scheduled in the next 100 minutes.

5. At the end of the simulation, display the average time between a patients requested time and the time he ended up being allotted.

6. Also display the number of patients who were serviced and how many appointments are still in the AVL Tree at the end of the simulation.

python code only

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Making Databases Work The Pragmatic Wisdom Of Michael Stonebraker

Authors: Michael L. Brodie

1st Edition

1947487167, 978-1947487161

More Books

Students also viewed these Databases questions

Question

=+3. Prepare a statement of owners equity for June.

Answered: 1 week ago