الگوریتم کوله پشتی

مینا

عضو جدید
با سلام
کسی می تواند الگوریتم کوله پشتی را برایم بفرستد.
با تشکر
 

yasin_d

عضو جدید
کاربر ممتاز
چه جالب باز زمان تحویل پروژه ها رسید:D.
کدوم یکی اش رو می خوای کوله پشتی معمولی یا صفر و یک
 

oxision

عضو جدید
کاربر ممتاز
الگوریتم کوله پشتی به روش حریصانه :
void gknapsack(float p[], float w[], float m, float x[], int n)
{
float rc;
int i;
pwsort(p,w,n);
for (i=0;i<n;i++)
x=0;
rc=m;
for(i=0;i<n;i++)
{
if(w>rc)
break;
x=1;
rc=rc-w;
}
if(i<=n-1)
x=rc/w;
}
صفحه 159 کتاب طراحی الگوریتم نوشته دکتر محمود نقیب زاده
 
آخرین ویرایش:

oxision

عضو جدید
کاربر ممتاز
الگوریتم کوله پشتی صفر و یک ( روش پویا) :
void dpknapsack(float p[],float w[], int n , float m,int x[])
{
float p1,w1;
set s[n+1],s1[n+1];
s[0]={(0,0)};
for(i=1;i<=n;i++)
{
s1={(p1,w1)|(p1-p,w1-w)Es[i-1]&&w1<=M};
s=merge(s[i-1],s1);
}
(p1,w1)=last tuple in s[n];
for(i=n;i>0;i--)
if(p1,w1)Es[i-1]
x=0;
else
{
x=1;
(p1,w1)=(p1-p,w1-w);
}
}
صفحه 211 کتاب طراحی الگوریتم نوشته دکتر محمود نقیب زاده
 

parhamak

عضو جدید
الگوریتم کوله پشتی صفر و یک ( روش پویا) :
void dpknapsack(float p[],float w[], int n , float m,int x[])
{
float p1,w1;
set s[n+1],s1[n+1];
s[0]={(0,0)};
for(i=1;i<=n;i++)
{
s1={(p1,w1)|(p1-p,w1-w)Es[i-1]&&w1<=M};
s=merge(s[i-1],s1);
}
(p1,w1)=last tuple in s[n];
for(i=n;i>0;i--)
if(p1,w1)Es[i-1]
x=0;
else
{
x=1;
(p1,w1)=(p1-p,w1-w);
}
}
صفحه 211 کتاب طراحی الگوریتم نوشته دکتر محمود نقیب زاده

kheili merci
 
بالا