Из-за периодической блокировки нашего сайта РКН сервисами, просим воспользоваться резервным адресом:
Загрузить через dTub.ru Загрузить через ClipSaver.ruУ нас вы можете посмотреть бесплатно درس ساختمان داده - درس دوم پیچیدگی زمانی الگوریتم ها или скачать в максимальном доступном качестве, которое было загружено на ютуб. Для скачивания выберите вариант из формы ниже:
Роботам не доступно скачивание файлов. Если вы считаете что это ошибочное сообщение - попробуйте зайти на сайт через браузер google chrome или mozilla firefox. Если сообщение не исчезает - напишите о проблеме в обратную связь. Спасибо.
Если кнопки скачивания не
загрузились
НАЖМИТЕ ЗДЕСЬ или обновите страницу
Если возникают проблемы со скачиванием, пожалуйста напишите в поддержку по адресу внизу
страницы.
Спасибо за использование сервиса savevideohd.ru
جلسه دوم - فصل اول: پیچیدگی ز مانی الگوریتم ها مقدمه ای بر تحلیل پیچیدگی زمانی و مرتبه اجرایی الگوریتم ها: در ارزیابی یک برنامه یا الگوریتم دو عامل اصلی وجود دارد که باید مورد توجه قرار گیرد یکی حافظه و دیگری زمان الگوریتم است یعنی الگوریتم بهتر است که فضای مصرفی و زمان کمتری را درخواست کند. در تحلیل زمان اجرای یک الگوریتم تمام دستورات را شمارش نمی کنیم زیرا تعداد دستورات به نوع زبان برنامه نویسی بستگی دارد. برای محاسبه زمان اجرای یک الگوریتم فقط به عملیات اصلی نیاز داریم که مستقل از کامپیوتر و زبان برنامه نویسی هستند در عین حال هیچ قاعده مشخصی برای انتخاب عملیات اصلی وجود ندارد و انتخاب عمل اصلی به صورت تجربی انجام می شود. برای بررسی زمان اجرای یک الگوریتم به تابعی به نام (t(n که تابع زمان الگوریتم می شود در نظر میگیریم که در آن n اندازه ورودی مسئله است که ممکن است شامل چندین داده ورودی باشد. مثال: اگر ورودی یک گراف باشد علاوه بر تعداد راس ها (n) یال ها نیز (m) یکی از مشخصه های ورودی است بنابراین زمان اجرای الگوریتم با (T(n,m شمارش می شود. در محاسبه زمان (T(n یک الگوریتم محاسبه تعداد تکرارعملیات و توابع بازگشتی اهمیت بیشتری دارد. شمارش گام ها یا مراحل یک برنامه گام های یک برنامه با استفاده از مراحل کلی و قواعد کلی زیر قابل محاسبه خواهد بود. تعاریف زیر برنامه ها و توابع دارای گام صفر هستند. هر بلاک شامل باز و بسته کردن { } دارای صفر گام است. تعاریف متغیر در صورتی که مقدار اولیه برای آنها درنظر گرفته نشود 0 و اگر گرفته در نظر گرفته شود 1 خواهد بود. درهر دستوراجرایی به ازای هربار اجرا دارای یک گام است. عبارت شرطی if: عبارت شرطی یک گام دارد اما با توجه به درست و غلط بودن شرط چون جملات مختلفی ممکن است اجرا شود کل دستور شرطی و به درست و غلط بودن شرط بستگی خواهد داشت دستور حلقه for: مهم ترین قسمت در شمارش گام های یک برنامه حلقه for است که ترتریب زیر گام آن را محاسبه می کنیم. ابتدا تعداد تکرار حلقه را محاسبه می کنیم. حلقه for به تعداد تکرار + یک گام اختیار می کند. جملات تکرار شونده داخل حلقه for به تعداد تکرار گام اختیار می کند. حلقه تودرتو: برای محاسبه گام حلقه های تودرتو به صورت زیر عمل میکنیم. از بیرون ترین حلقه شروع میکنیم. تعداد تکرار هر حلقه را برای تمام حلقه ها و دستورات تکرار شونده پایین در نظر گرفته و تعداد تکرار +1 را برای خود حلقه در نظر میگیریم. قسمت 2 را برای تمامی حلقه ها انجام می دهیم. ﺗﻌداد ﮔﺎم ﺣﻟﻗﻪ ﻫﺎي while ﻣﺎﻧﻧد ﻣﺣﺎﺳﺑﻪ ﻣﻲ ﺷود ﻳﻌﻧﻲ ﮔﺎم ﺣﻟﻗﻪ ﻳﻚ واﺣد از ﺗﻌداد ﺗﻜرار ﺣﻟﻗﻪ ﺑﻳﺷﺗر اﺳت. https://programstore.ir/?p=9097