Gold_cpp
چهارشنبه 21 مهر 1389, 08:27 صبح
سلام به همه
قطعه کد زیر توی کامپایلر ها چطوری کامپایل میشه .:عصبانی++:
void subset(int n,int i)// n = 3 , i = 0
{
if (i==n)
{
printsubset(n);
return;
}
flag[i]=1;
subset(n,i+1);
flag[i]=0;
subset(n,i+1);
}
این کد برای نوشتن زیر مجموعه یک مجموعه استفاده می شود . (power set)
اینطوری که من تحلیل کردم
flag[i]=0;
subset(n,i+1);
}
اصلا نباید تکرار بشه .
چون توی subset اولی خودشو فراخونی می کنه .
ولی وقتی خط به خط اجرا میکنم . انگاری واقعیت یه چیز دیگست . :متفکر:
بحث من سر همین چهار تا خطه .
flag[i]=1;
subset(n,i+1);
flag[i]=0;
subset(n,i+1);
اشتباه من چیه ؟:افسرده:
لطفا راهنمایی کنید.
قطعه کد زیر توی کامپایلر ها چطوری کامپایل میشه .:عصبانی++:
void subset(int n,int i)// n = 3 , i = 0
{
if (i==n)
{
printsubset(n);
return;
}
flag[i]=1;
subset(n,i+1);
flag[i]=0;
subset(n,i+1);
}
این کد برای نوشتن زیر مجموعه یک مجموعه استفاده می شود . (power set)
اینطوری که من تحلیل کردم
flag[i]=0;
subset(n,i+1);
}
اصلا نباید تکرار بشه .
چون توی subset اولی خودشو فراخونی می کنه .
ولی وقتی خط به خط اجرا میکنم . انگاری واقعیت یه چیز دیگست . :متفکر:
بحث من سر همین چهار تا خطه .
flag[i]=1;
subset(n,i+1);
flag[i]=0;
subset(n,i+1);
اشتباه من چیه ؟:افسرده:
لطفا راهنمایی کنید.