Data collection
Gathers about 3,000 registration records, each with a student ID, course ID, current study level and enrollment time. Every record is checked for correctness and completeness.
An intelligent system for analysing students’ course registrations. Records are stored in a self-developed linked list, scored for course demand, and sorted with four algorithms that are timed against their theoretical complexity.
This project designed an intelligent system for managing students’ course registration records at Prince Sultan University. It predicts course demand using data structures such as linked lists and arrays, together with sorting algorithms.
Records are stored in a self-developed linked list, and four sorting algorithms (Selection Sort, Insertion Sort, Merge Sort and Quick Sort) are compared on their time-complexity performance.
The results matched theory. On a dataset of more than 3,000 records, Merge Sort and Quick Sort, both O(n log n), beat Selection Sort and Insertion Sort, both O(n²), by a wide margin. This confirms that choosing the right algorithm matters for managing large data efficiently.
The system takes student course registration records and works out how much demand each course has. The data is then sorted four times, and each sort is timed.
Gathers about 3,000 registration records, each with a student ID, course ID, current study level and enrollment time. Every record is checked for correctness and completeness.
For each node, the demand scorer calculates a score from four criteria: a base score, a class multiplier, the time of registration, and the course ID priority.
Writes the results to a new file with each student’s demand score. The data is left unsorted so the sorting algorithms can be performance-tested afterwards.
Each lane sorts the same shuffled array of 36 values in descending order, just like the project. They all advance at the same number of comparisons per frame, so the finishing order reflects how much work each algorithm does.
On 3,432 registrations, Merge Sort finished in 17 ms and Quick Sort in 22 ms. Insertion Sort took 26 ms and Selection Sort took 45 ms, as their O(n²) complexity predicts.
Why sorting matters, and the question this project answers.
ReadThe three phases and an interactive demand-score calculator.
ExploreLine-by-line T(n) derivations for every class.
AnalyseWhy the 3,432-record dataset matters to the results.
ReadWho built which classes and wrote which sections.
Meet the teamAll 15 Java source files, highlighted and ready to copy.
BrowseConsole output from the full program run.
ViewFindings, lessons learned and future work.
ReadThe report covers the method, tables and discussion. The repository has the source and the input data.