fastttt
In this project, we are going to create a student Trwihi records database. As what we have in the first project, a Tawjihi recond has (seat number, branch, andaverage) separated by comma.The records will be read from one file and stored in a circular doubly limked listunsorted. To access the information fast we will use 2AVL trees. The first AVL will sort the data accooding to student's seat number. The second AVL. will sort that data by average. In the second AVL trwe, there will be grade duplicates. To handle the daplicate we will maintain a single linked list within the secnod SVL node (see below). Important: the AV L. trees will not contain any of the stadent information directly. Instead, they will contain a pointer to the stadents' information in the deubly liaked list. All the mestioned data structures should be part of a single data structure (olass) let us call it TawithiDs. The following figure shows the internal structure af Taw hidsc The TawjihiDS should have the follewing operations: - Insert: insert a new studeat record to the doolly laked liat as well as pointers into the fwo AVL. trees. Duplicate students' seat numbers ane not allemed. - Update a student infornatien given the seat mimber. - Delete a student record given the seat number. - Find a student record given a seat number. - Get all students for a given prade. Drtwer: You will implement a javalX GUll as follew? - Mt frst, the user has to use a file chooser to load a Tawjihi flle accerding to a sielected Tawihi branch (Le. Selentjde or Literary). - Read the file and fill the TawjihiDs (ire, dewly liaked list and 2 AVLs). - Show options tn insert/apdate/delete Tawpihi neonords - Show an eption to find a Tawihi recoed enine a seat number, with aptions to show the previous/oest reconds. - Show an option to print out doubly linked lise, 1* AVUlievel-traverall, er 204 AVU [level-traveral]