الگوریتم بازگشتی

lighting

Member
برای این که این الگوریتم رو به صورت بازگشتی بنویسیم(سوال این جوری بوده که تابعی که تعداد گره های لیست پیوندی یک طرفه رو نتیجه بده) این جوری می شه که شرط پایان رو این در نظر می گیریم که
list==null باشه بعد تایع بازگشتی رو می نویسیم؟ (اینم کدش که غیر بازگشتی نوشتم درسته؟)

کد:
int count (Node *ptr)
{
Node *List;
int c=0;
List =ptr;
if (List == Null)
return 0;
else 
while (List)
{List = list-->next;
c++;
}
return c;
}
 

the_king

مدیرکل انجمن
برای این که این الگوریتم رو به صورت بازگشتی بنویسیم(سوال این جوری بوده که تابعی که تعداد گره های لیست پیوندی یک طرفه رو نتیجه بده) این جوری می شه که شرط پایان رو این در نظر می گیریم که
list==null باشه بعد تایع بازگشتی رو می نویسیم؟ (اینم کدش که غیر بازگشتی نوشتم درسته؟)

کد:
int count (Node *ptr)
{
Node *List;
int c=0;
List =ptr;
if (List == Null)
return 0;
else 
while (List)
{List = list-->next;
c++;
}
return c;
}

بله، شما در تابع بازگشتی دیگه حلقه ای نخواهید داشت.
اگر List برابر NULL بود مقدار 0 و اگر نبود 1 + (count(List-->next را بر می گردانید.
 

shahinexir

New Member
salam . kheili mamnoon misham agar vasam code neveshtane in 3 ta barname ro be zaboone c bezarin.vaghean niaz daram.rastesh taze shoro kardam be yadgiriye c va in tamrinato bayad har che saritar tahvil bedam.mamnoon misham komakam konin : 1 ) barname i benevisid ke toole jesmi ra bar hasbe inch gerefte va bar hasbe cm chap konad?
2)barname i benevisid ke namo name khanevadegiie shoma ro besoorate jodagane daryaft konad va dar hali ke ghabl az anha peighame hello gharar gerefte bashad,chap shavad
3)barname i benevisid ke mohtavaye do moteghaier ra jabeja konad.masalan 2 adade x=5 , y=6 ra az vorioodi daryaft va jaye anha ra baham avaz konad .

vaghean mamnoon misham komakam konid.
 

the_king

مدیرکل انجمن
salam . Kheili mamnoon misham agar vasam code neveshtane in 3 ta barname ro be zaboone c bezarin.vaghean niaz daram.rastesh taze shoro kardam be yadgiriye c va in tamrinato bayad har che saritar tahvil bedam.mamnoon misham komakam konin : 1 ) barname i benevisid ke toole jesmi ra bar hasbe inch gerefte va bar hasbe cm chap konad?
2)barname i benevisid ke namo name khanevadegiie shoma ro besoorate jodagane daryaft konad va dar hali ke ghabl az anha peighame hello gharar gerefte bashad,chap shavad
3)barname i benevisid ke mohtavaye do moteghaier ra jabeja konad.masalan 2 adade x=5 , y=6 ra az vorioodi daryaft va jaye anha ra baham avaz konad .

Vaghean mamnoon misham komakam konid.

سوال نامربوط به مبحث نپرسید، سوال جدید رو در مبحث جدید دیگری بنویسید :
b4 - اگر چندین سوال دارید که بهم مربوط نیستند، در مبحث های جداگانه مطرح شان کنید.
زمانی که چند سوال را در یک مبحث مطرح می کنید نمی توانید یک عنوان دقیق و با جزئیات انتخاب نمایید،در نتیجه ناچار می شوید که از یک عنوان نامناسب مثل "چند سوال در مورد فتوشاپ" استفاده کنید که خیلی مبهم و کلی است و مشخص کننده موضوع سوال شما نخواهد بود.

در ضمن پینگلیش نوشتن در مجید آنلاین ممنوعه، با حروف فارسی بنویسید :
d11 - کلیه مطالب ارسالی که به زبان فارسی هستند باید با حروف فارسی درج شوند.
مجیدآنلاین یک سایت تخصصی ویژه کاربران پارسی زبان و بویژه ایرانی ها است و نوشتن متن های پینگلیش (فینگلیش) موجب آزار کاربران و ممنوع است. در صورتی که به هر دلیلی امکان تایپ کردن مستقیم حروف فارسی برایتان میسر نیست، می توانید از ابزار transliterate سایت گوگل استفاده نمایید :
type in persian - google transliteration
 

جدیدترین ارسال ها

بالا