-
الکوریتم زمانبندی fcfs
با سلام به تمامی دوستان
من می خواستم الگوریتم زمانبندی fcfs رو با زبان C پیاده سازی کنم
من یه سولی داشتم دوستان در مورد الگوریتم زمانبندی fcfs
همینطور که توی عکس می بینید الگوریتم زمانبندی fcfs به این صورت هستش که
کمترین مقدار ورودی (اونی که اول بیاد اول اجرا میشه) رو پیدا باید بکنه و با توجه به زمان اجرا
اون عملیات رو محاسبه بکنه.
مشکل من اینه که توی عکس که میینید الان دوتا ورودی 0 داریم ما. حالا من از کجا بفهمم
کدوم اول اومده مگه ما به کمترین مقدار ها نگاه نمی کنیم توی ورودی ها. بعد از اینکار
چجوری من وقتی کمترین ورودی رو پیدا کردم از زمان اجراش استفاده کنم منظورم اینه که
آیا زمان اجراها باید توی یه ارایه دیگه ای بریزم و از کجا به برنامه بفهمونم که مثلآ زمان ورود
7 زمان اجراش 3 هستش در ضمن از چه الگوریتمی برای جستجو توی ارایه استفاده کنم
لینک عکس :
کد:
http://jaison.persiangig.com/image/PICT0005.JPG
ممنون
-
سلام .
می تونین از multiset استفاده کنین و عضو اول این مولتی ست که میشه همون فرایند 1 ، بشه صفر و 8 . و به همین ترتیب . در این صورت شما هر 3 گزینه رو در اختیار دارین . مولتی ست هم که بر اساس عضو اولش خودش مرتب شده insert می کنه و کار شما راحت تر میشه .
کد:
#include <set>
using namespace std;
int main()
{
multiset< pair< int, int > > s;
pair< int, int > temp;
temp.first = 0;
temp.second = 8;
s.insert( temp );
temp.first = 2;
temp.second = 2;
s.insert( temp );
return 0;
}