This repository contains implementations of scheduling algorithms with deadlines and job assignments using various approaches.
This project demonstrates:
- Scheduling with Deadlines: Optimizing task order to maximize profit within deadlines.
- Disjoint Set Scheduling: Utilizing disjoint set data structures for efficient task management.
- Job Assignments: Assigning jobs to individuals using greedy and dynamic programming approaches.
- Description: Sorts jobs by profit and schedules them within their deadlines for maximum profit.
- Output: Displays optimal job sequence and total profit.
- Description: Uses disjoint set data structures to efficiently manage and schedule tasks by deadlines.
- Output: Shows optimal task scheduling with maximum profit.
- Greedy Approach: Assigns jobs to individuals to minimize cost using a greedy algorithm.
- Dynamic Programming: Finds the optimal job assignments to minimize costs using dynamic programming.
- Output: Displays job assignments with corresponding costs and total minimal cost.
For a detailed explanation of the algorithms, data structures, and code implementation, refer to the Technical Documentation.