ايران ويج

نسخه‌ی کامل: درخواست کمک برای برنامه ی زیر مجموعه
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
الکوریتمی که تمام زیرمجموعه های یک مجموعه ی kعضوی را با معلوم بودن اعضا بدهد.با تشکر
من برای اینکار یک راه حل ارائه میکنم و شما خودت خیلی راحت الگوریتمش رو بنویس :

مثال ---> فکر کن ما سه تا عضو توی مجموعه داریم . خوب برای بدست آوردن تمام زیر مجموعه ها :

1 - میدونیم که زیر مجموعه های یک مجوعه k عضوی 2 به توان k زیر مجموعه دارند . پس میتونیم از خاصیت مشابهی که در اعداد مبنای 2 وجود داره استفاده کنیم . پس ابتدا تمام اعداد 3 بیتی ( بخاطر اینکه 3 عضو داریم ) رو در مبنای 2 ( باینری ) بدست میاریم . میشه 2 به توان 3 یعنی 8 تا عدد باینری بشکل زیر :

کد:
Dec    Binary
0         000
1         001
2         010
3         011
4         100
5         101
6         110
7         111

2 - حالا به اعداد در مبنای 2 دقت کن و به این شکل برو جلو . رقم اول از سمت چپ نشانه عضو اول مجوعه ، رقم دوم عضو دوم و رقم سوم نشانگر عضو سوم مجموعه شماست . هر جا که صفر بود یعنی اون عضو توی زیرمجموعه نیست و هر جا یک بود یعنی هست !

این یعنی مثلا 000 هیچ کدام از عضو های مجموعه پس نشانگر زیر مجموعه تهی هست . ( تهی زیر مجموعه هر مجموعه ای هست )
یا 011 یعنی زیر مجوعه ای شامل عضو دوم و سوم مجموعه اصلی . یا 111 یعنی زیر مجموعه ای شامل تمام عضوهای اول و دوم و سوم ( هر مجموعه ای زیر مجموعه خودش هم هست ) و ..... الی آخر !


بگذار مثال هم بزنم تا بهتر روشن بشه . مجموعه ای داریم بشکل { 3,15,11 }
خب زیر مجموعه ای این مجموعه رو از روی همون کد ها اینطور میشه بدست آورد :

کد:
مجموعه تهی =  000
{11}   =  001
{15}   =  010
{11 , 15 }   =  011
{3} =  100
{11 , 3 }  =  101
{ 15 , 3 } =  110                
{ 3,15,11 }  =   111
exclamation:سلام.چه طور بنویسیم که مثلا 001 نشون دهنده ی aباشه؟
(۰۵-مهر-۱۳۹۲, ۱۶:۱۳:۳۷)yas92 نوشته است: [ -> ]exclamation:سلام.چه طور بنویسیم که مثلا 001 نشون دهنده ی aباشه؟

هر کاراکتر یه شماره خاص داره مثلا A شماره 65هست بعد معادل باینری 65را بدست بیاورید
ی چیزی:
چجوری وقتی یک مجموعه n عضوی داریم حالت های مختلف اعداد باینری را ب دیت بیاریم؟
(۱۳-بهمن-۱۳۹۲, ۰۰:۰۱:۵۶)f.akrami1995 نوشته است: [ -> ]ی چیزی:
چجوری وقتی یک مجموعه n عضوی داریم حالت های مختلف اعداد باینری را ب دیت بیاریم؟
سلام به فروم خوش امدید!

یعنی چی ب دیت بیاره؟؟
باید یک حلقه بزارید تا n بار تبدیل کنید ......