To keep track of the courses, you should store them in an AVL tree data structure. The key that will be used by the AVL tree is the course code. The following operations should exist in your application: 1. Read the file courses.txt file and create the tree. 2. Insert a new course from the user with all its associated data. 3. Find a course and support updating of its information. 4. List courses in lexicographic order with their associated information (credit hours, IDs, and topics). 5. List all topics associated with a given course. 6. List all courses in lexicographic order that belong to the same department. 7. Delete a course. 8. Delete all courses that start with a specific letter. 9. Delete all courses belong to a given department. 10. Save all words in file offered_courses.txt Grading policy: 1. Your application should have all functionalities working properly. Twenty marks will be graded for the functionality of the project; 2. The following notes will make up the remaining 10 marks of the grade: a. There has to be adequate documentation and comments in the code (i.e., functions, loops, etc.); b. Your code should follow the code convention (i.e., spaces, indentations, etc.); and c. Your application should contain a menu to allow the user to select which option (s) he would like to run. In this project, you will maintain the information of different courses using AVL trees. Your program will read the courses and their relevant information from a file named courses.txt. As well, the user should be able also to enter new courses into the program with their relevant information. Please use the following format for inputs Course:CreditHours#Course Code #Department/topic1, topic2, topicN **** where N is the number of topics covered in the course and it is 2 1. Example of input courses: P Course: Credit Hours #CourseCode/topicl, topic2, topicN Data structures: 4# COMP2421 #Computer. Science/recursion, time analysis, linked lists, stacks, queues, trees, bst, avl, splay, b_trees, hash, heaps, sorting, graphs Introduction to programming:3#COMP133 #Computer Science/algorithms, introduction to c, functions, selection, loops, pointers, arrays, structs to Introduction French: 3# FREN111#French. Language/letters, numbers, greetings, grammars,
To keep track of the courses, you should store them in an AVL tree data structure. The key that will be used by the AVL tree is the course code. The following operations should exist in your application: 1. Read the file courses.txt file and create the tree. 2. Insert a new course from the user with all its associated data. 3. Find a course and support updating of its information. 4. List courses in lexicographic order with their associated information (credit hours, IDs, and topics). 5. List all topics associated with a given course. 6. List all courses in lexicographic order that belong to the same department. 7. Delete a course. 8. Delete all courses that start with a specific letter. 9. Delete all courses belong to a given department. 10. Save all words in file offered_courses.txt Grading policy: 1. Your application should have all functionalities working properly. Twenty marks will be graded for the functionality of the project; 2. The following notes will make up the remaining 10 marks of the grade: a. There has to be adequate documentation and comments in the code (i.e., functions, loops, etc.); b. Your code should follow the code convention (i.e., spaces, indentations, etc.); and c. Your application should contain a menu to allow the user to select which option (s) he would like to run. In this project, you will maintain the information of different courses using AVL trees. Your program will read the courses and their relevant information from a file named courses.txt. As well, the user should be able also to enter new courses into the program with their relevant information. Please use the following format for inputs Course:CreditHours#Course Code #Department/topic1, topic2, topicN **** where N is the number of topics covered in the course and it is 2 1. Example of input courses: P Course: Credit Hours #CourseCode/topicl, topic2, topicN Data structures: 4# COMP2421 #Computer. Science/recursion, time analysis, linked lists, stacks, queues, trees, bst, avl, splay, b_trees, hash, heaps, sorting, graphs Introduction to programming:3#COMP133 #Computer Science/algorithms, introduction to c, functions, selection, loops, pointers, arrays, structs to Introduction French: 3# FREN111#French. Language/letters, numbers, greetings, grammars,
Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
Related questions
Question
Expert Solution
This question has been solved!
Explore an expertly crafted, step-by-step solution for a thorough understanding of key concepts.
Step by step
Solved in 2 steps
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY