Project
Project
Objective:
Help Gru manage the exciting Gadget Expo where he showcases his latest inventions
and interacts with fellow inventors. Utilize various data structures to handle guest
requests, manage event schedules, track merchandise, handle emergency evacuations,
and incorporate prefix notations for evaluating expressions related to gadget
functionality. This project will require the implementation of Array-Lists, Linked-
Lists, stacks, queues, and recursion.
Tasks and Requirements:
Task 1: Array-List (Event Management)
• Use an Array-List to store the list of scheduled events at the expo.
• Implement methods to add, remove, and search for events by criteria such as
time and popularity.
• Example events:
o "Minion Mayhem: A Day in the Life"
o "Gru's Greatest Gadgets Showcase"
o "Inventions of the Future"
• Number of Inputs: Typically, with at least 5-10 events. Users can add or
remove events during the simulation.
Task 2: LinkedList (Guest Management)
• Maintain a LinkedList to track the order of guests arriving at the expo.
• Implement methods to add guests to the list and process them as they enter.
• Example guests:
o Name: Vector, Favorite Invention: Freeze Ray, Assigned Events:
Minion Mayhem, Gru's Greatest Gadgets.
o Name: Dr. Nefario, Favorite Invention: Jelly Jam, Assigned Events:
Gru's Greatest Gadgets, Inventions of the Future.
• Number of Inputs: Start with 5 guests. Users can add more guests
dynamically during the expo.
Task 3: Stack (Emergency Evacuation & Prefix Notation Evaluation)
• Emergency Evacuations:
o Use a stack to manage emergency evacuation routes.
o Example routes:
▪ Route A: Exit through main hall.
▪ Route B: Exit through side entrance.
o Number of Inputs: Initialize with 3 routes. Users can add more routes
as needed.
• Prefix Notation Evaluation:
o Implement a method for user input of prefix expressions to adjust the
number of showcased inventions or inventory levels.
o Example expressions:
▪ + 5 3 (adjust the number of showcased inventions to 8)