PDA

View Full Version : سوال: کد توابع روش حریصانه



khz-web1
شنبه 23 اردیبهشت 1391, 18:35 عصر
سلام
مراحل انجام کار الگورتیم حریصانه به شرح ذیل است
1- روال انتخاب، عنصربعدی را که باید به مجموعه اضافه شود،انتخاب می کند.انتخاب طبق یک ملاک حریصانه است.
2- بررسی امکان سنجی ، تعیین می کند که آیا مجموعه جدید برای رسیدن به حل،عملی است یا خیر.
3- بررسی راه حل ، تعیین می کند که آیا مجموعه جدید ، حل نمونه را ارائه می کند یا خیر.
4-تابع هدف: هدف بهینه کردن این تابع است
کد زیر مراحل بالا انجام می دهد یعنی برای هر مرحله یک تابع نوشته شده است



set greedy(c){

s=Φ;

while(!solution (s) && c!= Φ){

X=select(c);

c=c-{x};

if(feasible(s,x))

s=sU{x}

}

if(solution(s))

return s;

else return Φ;

}



می خواستم بدونم کد هر تابع به چه صورتی هستش
با تشکر