رفتن به مطلب

بیایید الگوریتم ارایه بدهیم


ارسال های توصیه شده

سلام:ws3:

خوبید :ws3:

خوشید:ws3:

دماغتون تپله:ws3:

دوست دارید اون ماهیچه های ذهن رو یه خرده ورزش بدیم ؟:167:

یه فکری به سرم زد درست همین الان:w58:

گفتم تا نپریده همین جا همین لحظه همین تاپیک بیانش کنم ببینم میشه هندلش کرد یا نه:ws38:

 

حتما خیلی ها بخصوص بچه های کامپیوتر با اصطلاح الگوریتم اشنا هستند

الگوریتم روند اجرای یک کار به صورت مرحله به مرحله و دقیق هست حالا منظوراز دقیق هم یعنی کاملا شفاف بدور از ابهام و قطعی و درکل FORMAL می باشد

 

 

 

روند این تاپیک اینجوریه که :

یه مسئله ای مطرح میشه که بیشتر این مسایل هم بیشتر تو دنیای مهندسی و علوم نظری و کاربردی و بخصوص ریاضیات گسسته طرح شده

بعد هرکس جدای از اینکه چه زبانی بلد است میاد برای ان مسئله الگوریتم ارایه می دهد

 

اما چون در ابتدای کار هستیم سعی میشود از مسایل ساده و گاها شناخته شده استفاده شود

 

درضمن طراح مسئله باید چند نکته را مد نظر داشته باشد

 

  1. صورت مسئله کاملا شفاف و دقیق توضیح و بیان شود
  2. ورودی های مسئله کاملا بیان شود
  3. قوانین و محدودیت های حاکم بر ورودی های مسئله باید کامل ذکر شود به عنوان مثال هر ورودی عددی صحیح (INTEGER) و مابین بالفرض 0 تا 100 باشد

  4. خروجی های مسئله باید کاملا بیان شود یعنی اینکه کامل توضیح داده شود که مسئله باید چه خروجی رو ارایه بدهد

 

با این روال جلو می رویم ابتدا مسئله ای طرح میشود بعد برای ان مسئله الگوریتمی ارایه می گردد بعد که تمامی الگوریتم ها ارایه گردید می رویم سراغ بهینه کردن الگوریتم یا اعمال محدودیت در ارایه امکاناتی که الگوریتم ما می تواند بکار گیرد

 

امیدوارم توضیحاتم کامل بوده باشد هرجا ابهامی یا سوالی داشتید بنده درخدمتم:ws3:

  • Like 17
لینک به دیدگاه

اولین مساله :

 

یک چراغ راهنمایی در مسیر گردش از بزرگراه به یک مرکز فروش بزرگ تعبیه شده است. عملکرد این چراغ به گونه‌ای است که در هر دقیقه حداکثر k خودرو امکان گردش از بزرگراه به سمت مسیر مرکز را دارند. در پایان هفته شهروندان بیشتری برای خرید به این مرکز مراجعه می‌کنند که باعث بالا رفتن حجم ترافیک می‌شود. مدیران مرکز سفارش نصب دوربین ویژه‌ای در نزدیکی آن محل را داده‌اند که امکان شمارش تعداد خودروهای وارد شده از سمت شهر به محل گردش به مرکز فروش را دارد.

عملکرد دوربین از n دقیقه قبل آغاز شده است. شما باید با توجه به اطلاعات ارسال شده از طریق این دوربین، تعداد خودروهایی را که در حال حاضر پشت چراغ راهنمایی متوقف شده‌اند محاسبه کنید.

 

ورودی:

خط اول شامل اعداد k و n است که حداکثر خودروهای قابل گذر از چراغ راهنمایی در هر دقیقه، و میزان دقایق سپری شده از شروع به کار دوربین را مشخص می‌کنند. خط دوم شامل n عدد a3 ،a2 ،a1، ... و an است. منظور از ai تعداد خودروهای نزدیک شده به محل گردش در دقیقه iام است.

دوربین نیز کار خود را از صبح آغاز می‌کند، که عبور خودروها آغاز می‌شود.

 

خروجی:

تعداد خودروهایی که در حال حاضر پشت چراغ متوقف هستند.

 

نمونه ورودی:

n=3

k=5

a1=5

a2=7

a3=2

نمونه خروجی:

0

  • Like 11
لینک به دیدگاه

لازم دونستم اینجا چن نکته رو گوشزد کنم

اول اینکه قصد من از زدن تاپیک این چنینی و دعوت از دوستان این نیست که به زور کسی وادار به پست دادن در اینجا بشود یا خدای نکرده از اولویت های کاری خودش در دنیای بیرون بزند و بشیند به مسایل مطرح شده در اینجا فکر کند

بیشتر هدف ایجاد فضای همفکری و همکاری و دیدن یک مساله از جنبه های مختلف و حتی راههای مختلف است

قرار نیست همه مون در همان بار اول به جواب برسیم یا اگه جوابی نوشتیم حتما درست باشد

به نظر خود من دیدن راه حل های مختلفی که افراد برای یک مسئله ارایه می کنند از خود جواب درست زیباتر و اموزنده تر است

این مسئله هم چون به نظر خودم مناسب اومد اینجا گذاشتم

از صب اولین کاری که کردم این بود که سراغ طرح مسئله برم

برای همین کل کتابهایی که در دسترسم بود ( کتاب چهار جلدی گریمالدی و ساختمان گسسته جانسون با) رو به همراه کتابهای ساختمان داده جلو روم گذاشتم

چندین مسئله انتخاب کردم بعضیا خیلی خیلی ساده بودن و اصلا ارزش مطرح کردن نداشتن

بعضیا هم نیاز به مقدمات زیاد داشتن

اما این مسئله ای رو که از تو نت پیدا کردم از همه مناسب تر دیدم چون واقعا نیاز به علم خاص یا معلومات از پیش داشته ای ندارد

 

پس خواهشا اگر اصلا قصد شرکت ندارید یا این تاپیک را بیهوده میدانید پست ندید و اگر هم جوابی هرچند هم ساده و اولیه به ذهنتان میرسد بیان کنید

تاکید می کنم هدف دیدن و تحلیل یه مساله از زوایای مختلف ست و بس

  • Like 4
لینک به دیدگاه

دومین مساله :

 

صورت مسئله :

 

فرض کنید دو تا متغیر داریم بنام های a و b که داخل این متغیرها دو عدد ذخیره شدن (هرچی )

میخواهیم محتویات این دو متغیر را بدون کمک از متغیر کمکی (temp) باهم عوض کنیم

 

مثلا اگر داشته باشیم

a=3

b=7

بعد از اعمال الگوریتم موردنظر محتوایت متغیرها به صورت زیر باشد

a=7

b=3

 

خب الان چیکار کنیم ؟

 

 

این اولین مساله ای بود که سال اول ترم اول اولین جلسه استادمون ازمون خواست تو ده دقیقه جوابشو بگیم

 

 

دیگه راحت تر از این پیدا نکردم :banel_smiley_4:

  • Like 5
لینک به دیدگاه
یجوریه سوالش!

خو شمارنده میذاره تعداد عبوریاشو میشمره دیگه!

منظورش چیه؟

 

نه میخواد یه رابطه بدست بیاره به این صورت که مثلا با تنظیم و دستکاری اون چراغ راهنما و اون تایمی که رنگ چراغ عوض میشه ببینه مثلا در 5 دقیقه چقدر ماشین رد میشه و چن تا پشت چراغ می مونه

به نظر ساده هس ولی واقعا کاربردی و علمیه

فرض کن زمان بندب چراغ راهنما طوری هس که در طول مدتی که چراغ جق عبور به ماشین ها میده حداکثر k تا ماشین رد میشه و وارد میدون و فروشگاه مرکزی میشه

حتما اون چراغ هایی که با تایم کار می کنن رو دیدی بعضی هاشو تایمشون 70 ثانیه هس بعضی هاشون 40 و غیره

اینا همین جوری تنظیم نشده برحسب میزان ترافیک اون منطقه تنظیم شده و حتی در روزهای تعطیل و غیر تعطیل تایم شون ممکنه تغییر کنه

این مسئله میخواد یه رابطه بدست بیاره که با دادن k یعنی حداکثر تعداد ماشینی که می تونه در اون تایم چراغ از خط رد بشه و وارد میدون بشه و n یعنی مدت زمانی که از زمان شروع به کار چراغ گذشته یه رابطه رو بدست بیاره

الان عجله دارم باید برم ولی مایل باشی فردا با یه مثال کاملا توضیح میدم منظورش چیه

  • Like 1
لینک به دیدگاه
×
×
  • اضافه کردن...