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...
icon
Related questions
Question
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#CourseCode #Department/topic1, topic2,
topicN
where N is the number of topics covered in the course and it is 2 1.
Example of input courses:
Course: CreditHours #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
Introduction
to
French: 3#FREN111#French
Language/letters, numbers, greetings, grammars,
Transcribed Image Text: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#CourseCode #Department/topic1, topic2, topicN where N is the number of topics covered in the course and it is 2 1. Example of input courses: Course: CreditHours #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 Introduction to French: 3#FREN111#French Language/letters, numbers, greetings, grammars,
Expert Solution
steps

Step by step

Solved in 2 steps

Blurred answer
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
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 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)
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
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY