Skip to content

julisolval/university-task-sorter-quicksort

Repository files navigation

Project Overview

This project implements a QuickSort algorithm in Python to organize an academic to-do list.
Tasks are sorted primarily by deadline and secondarily by priority (lower priority value is considered more urgent), allowing students to visualize which assignments should be completed first.

How It Works

The algorithm applies a recursive QuickSort strategy:

  • The first task is selected as the pivot.
  • Remaining tasks are divided into two groups:
    • Tasks with earlier deadlines or higher priority.
    • Tasks with later deadlines.
  • The algorithm recursively sorts each group and combines the results.

Algorithm Complexity: The average runtime of quicksort is O(n log n). The worst case occurs when the list is already sorted and the first element is always chosen as the pivot, or when many elements are equal, resulting in a runtime of O(n²).

Future Improvements

  • Color-coding tasks by course for visual organization.
  • Task status tracking (completed / pending).

In production, Python’s built-in sorting would be more efficient, but quicksort is implemented here for algorithmic learning purposes.

QuickSort Visualization

quicksort

About

University task sorter built in Python using a recursive QuickSort algorithm. Tasks are organized by deadline and priority to simulate real academic workload management.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages