تبلیغات
وب سایت مهندسی الکترونیک و کامپیوتر
کاربر عزیز خوش آمدید!
|

جزوه طراحی الگوریتم - سید ناصر رضوی

جزوه طراحی الگوریتم - سید ناصر رضوی

همانطور که می دانید درس طراحی الگوریتم از دروس مهم دروره کارشناسی کامپیوتر و کنکور ارشد گرایش نرم افزار است. با توجه به اهمیت این درس تلاش می کنیم تا بهترین منابع این درس در سایت وجود داشته باشند. در این پست کتاب طراحی الگوریتم نوشته سید ناصر رضوی آورده شده است این کتاب در پنج فصل نوشته شده و همه مطالب درس به صورت خلاصه شده می باشند. بنابراین در صورتی که زمان زیادی برای مطالعه مطالب این درس را ندارید، این کتاب برای شما مفید خواهد بود. 

فصل اول: الگوریتم ها، کارایی، تحلیل و مرتبه

فصل دوم: رهیافت تقسیم و حل

فصل سوم: برنامه نویسی پویا

فصل چهارم: رهیافت حریصانه

فصل پنجم: عقبگرد

جزوه الگوریتم و فلوچارت

http://farsbooks.mihanblog.com

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

تمام الگوریتم‌ها باید شرایط و معیارهای زیر را دارا باشند:

ورودی: یک الگوریتم باید هیچ یا چندین پارامتر را به عنوان ورودی بپذیرد.

خروجی: الگوریتم بایستی حداقل یک کمیت به عنوان خروجی (نتیجه عملیات) تولید کند.

قطعیت: دستورات الگوریتم باید با زبانی دقیق، و بی‌ابهام بیان شوند. هر دستورالعمل نیز باید انجام‌پذیر باشد. دستوراتی نظیر «مقدار ۶ یا ۷ را به x اضافه کنید» یا «حاصل تقسیم پنج بر صفر را محاسبه کنید» مجاز نیستند، چرا که در مورد مثال اول، معلوم نیست که بالاخره چه عددی باید انتخاب شود، و در خصوص مثال دوم هم تقسیم بر صفر در ریاضیات تعریف نشده‌است.

محدودیت: الگوریتم باید دارای شروع و پایان مشخصی باشد، به نحوی که اگر دستورات آن را دنبال کنیم، برای تمامی حالات، الگوریتم پس از طی مراحل شمارا و متناهی خاتمه یابد. به علاوه، زمان لازم برای خاتمه الگوریتم هم باید به گونه‌ای معقول، کوتاه باشد.

فلوچارت Flowchart نموداری است برای نمایش داده‌ها، اطلاعات و روند کار یک الگوریتم بر روی آنها، و وسیله نمادهای خاص و خطوط جهت‌دار بین آنها نمایش داده می شود.

فلوچارت در واقع نقشه‌ای است که برنامه‌نویسان رایانه قبل از نوشتن برنامه به زبان برنامه‌نویسی اصلی آن را ترسیم می‌کنند. با مروری بر فلوچارت روند اجرای عملیات، مراحل و جزئیات برنامه و ورودی و خروجی هر مرحله از برنامه مشخص می‌شود. استفاده از فلوچارت جهت حل هر مسئله‌ای مفید است و بدون در نظر گرفتن زبان برنامه‌نویسی، نوشتن برنامه را سهولت می‌بخشد. علاوه بر این فلوچارت جزئی با ارزش از مستندات هر برنامه می‌باشد که با کمک آن تفسیر برنامه، عیب‌یابی و استفاده توسط شخصی به جز برنامه‌نویس را آسان می‌کند. برای رسم فلوچارت آگاهی و تسلط بر مراحل مورد نیاز و ترتیب آنها جهت به دست آوردن نتیجه مورد نظر با استفاده از داده‌های ورودی به الگوریتمی که فلوچارت برای آن کشیده می‌شود، لازم است.

برای دانلود به ادامه مطلب مراجعه کنید.

برنامه نویسی مقدماتی مفاهیم الگوریتم و فلوچارت

http://farsbooks.mihanblog.com

در علوم رایانه، یک الگوریتم را یک روال محاسباتی خوش‌ تعریف می‌دانند که مقدار یا مجموعه‌ای از مقادیر را به عنوان ورودی (Input) دریافت کرده و پس از طی چند گام محاسباتی، ورودی را به خروجی (Output) تبدیل می‌کند. بجز این، الگوریتم را ابزاری برای حل مسائل محاسباتی نیز تعریف کرده‌اند. ساخت و طراحی الگوریتم مناسب در مرکز فعالیت‌ های برنامه‌ سازی رایانه قرار دارد. یک برنامه رایانه‌ای، بیان یک یا چند الگوریتم با یک زبان برنامه‌ نویسی است. 

باید بدانیم برای هر الگوریتم تعریف متغیرها و طراحی مرحله به مرحله بسیار مهم است زیرا الگوریتم باید بداند بر روی چه متغیر‌هایی، چه اعمالی را انجام دهد و نتیجه را در غالب چه متغیرها یا پارامتر‌هایی نشان دهد. اگر الگوریتم برای عمل مورد نظر مناسب نباشد و یا غلط باشد به نتیجه مورد نظر نمی‌رسیم.

همچنین در این آموزش علاوه بر آشنایی با مفاهیم الگوریتم و فلوچارت به صورت عملی با برنامه نویسی مقدماتی با استفاده از زبان C و C++ آشنا می شوید.

برای دانلود به ادامه مطلب مراجعه کنید.

الگوریتم مسیریابی *A

http://farsbooks.mihanblog.com

در حال حاضر چندین مقاله راجع به این الگوریتم در اینترنت و آن هم به زبان انگلیسی موجود است که از میان آن ها تنها مقاله ی موجود در سایت RayWenderlich برای مبتدیانی نظیر بنده قابل فهم بود. 

این مقاله سعی دارد تا الگوریتم *A را که از این پس برای راحتی کار، آن را الگوریتم «آ-ستاره» یا A-Star می نامیم، گام به گام و بر اساس مفاهیم بسیار ابتدایی شرح دهد. از طرف دیگر سعی کردیم که تنها به حروف و کلمات بسنده نکنیم و از تصاویر و نمودارها نیز برای انتقال مفاهیم کمک گرفته ایم.

مهم نیست که شما می‎خواهید از کدام زبان برنامه نویسی برای پیاده سازی این الگوریتم استفاده کنید، فقط گام به گام با ما پیش بیایید و فقط سعی کنید که الگوریتم «آ-ستاره» را کاملاً دقیق بفهمید.

برای دانلود به ادامه مطلب مراجعه کنید.

الگوریتم برنامه نویسی

http://farsbooks.mihanblog.com

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

برای دانلود به ادامه مطلب مراجعه کنید.

تماس با ما
سفارش پروژه