This document provides instructions to extend Project 1 to use advanced data structures like a multi-tree to organize a library by levels of library, author, book, and journal. It also tasks implementing comparators to sort within groups by various fields like title, price, and author name. Finally, it asks to extend the GUI from Project 1 to allow sorting by the defined comparators.
Liang Chapter 12 GUI BasicsTITLELiang Chapter 16 Event-Driven Programming TITLELiang Chapter 17 GUI ComponentsTITLEAdvanced Data Structures and Sorting for Library Project
1. Liang, Chapter 12 "GUI Basics"
Liang, Chapter 16 "Event-Driven Programming"
Liang, Chapter 17 "GUI Components"
Extend Project 1 to use advanced data structures and support sorting on various keys.
Elaboration:
1. Required data structure - the advanced data structure I want you to implement is a multi-tree with
the following levels:
1. Library - Level 0
2. Author - Level 1
3. Book - Level 2
4. Journal - Level 2
2. Use the Map class to support efficient instantiation linking of the classes used in Project 1.
3. Implement comparators to support sorting:
o books by title, price, index
o journals by (added fields) volume and number, date and issue
o authors by name, index
o The sorting should be within the group - books and journals corresponding to each author
(in the case of journals we consider the editors as authors).
Extend the GUI from Project 1 to allow the user to:
o sort by the comparators defined in part 2.
Again, the GUI elements should be distinct from the other classes in the program.