TheAlgorithms / C-Plus-Plus

Collection of various algorithms in mathematics, machine learning, computer science and physics implemented in C++ for educational purposes.
https://thealgorithms.github.io/C-Plus-Plus
MIT License
30.79k stars 7.29k forks source link

Implement Priority Scheduling Algorithm #2874

Open arrx-03 opened 1 month ago

arrx-03 commented 1 month ago

Detailed description

I would like to contribute by implementing the Priority Scheduling Algorithm. This scheduling algorithm is commonly used in operating systems to allocate CPU time to processes based on their priority levels. It is a vital addition to any collection of algorithms.

Context

The Priority Scheduling Algorithm is a crucial addition to "The Algorithms" repository as it provides a deeper understanding of CPU scheduling techniques, especially in operating systems. Its implementation is essential for users studying computer science or developing applications where task prioritization is necessary.

Possible implementation

To implement the Priority Scheduling Algorithm, I suggest breaking the task down into clear steps, ensuring both preemptive and non-preemptive versions are supported. Here's a suggested idea:

Data Structure: Process Class: Each process can be represented as a class containing:

process_id: A unique identifier for the process.

priority: The priority of the process (lower number = higher priority).

arrival_time: The time at which the process arrives.

burst_time: The total time required for the process to execute.

completion_time, waiting_time, and turnaround_time: To track the respective times

Additional information

No response

gourab9817 commented 3 weeks ago

Hello @mjk22071998 @realstealthninja @arrx-03 Please assign me the issue, I would like to give the optimal approach for this issue.

ciweiandmao commented 1 week ago

Please assign me the issue.As a beginner, I want to contribute code to the open source community

ciweiandmao commented 1 week ago

Please read my new pull requests :https://github.com/TheAlgorithms/C-Plus-Plus/pull/2900

MQ-06 commented 4 days ago

I really want to work on this issue!