الـگـوريــتم نــويـس

وبـســايــت هر بــــــــــــــــــــرنامه نــــــــــــــــــويس

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

آموزش الگوريتم نويسي
الگوريتم‌هاي مسيريابي
آموزش مقدماتي
نوشته شده توسط محمد حسين سعادت فر   
در شبکه‌هاي کوچک، و در نقاطي که انتقال اطلاعات معمولا مستقيم است، مسيريابي چندان جدي گرفته نمي‌شود. اما هنگامي که شبکه‌ها از حالت‌هاي ايستگاه‌هاي کاري خارج مي‌شوند و کمي پيچيده‌تر مي‌شوند، در اين حالت، مسيريابي و انتخاب مسير بهينه براي ارسال بسته‌هاي اطلاعاتي، به يک امر مهم بدل مي‌شود. در شبکه‌هاي بزرگ، دستگاه‌هايي به‌عنوان مسيرياب1 وجود دارند که عمل مسيريابي را انجام مي‌دهند.
ادامه مطلب...
 
الگوريتم‌هاي مرتب سازي 2
آموزش مقدماتي
نوشته شده توسط محمد حسين سعادت فر   
يکي از مهم‌ترين مولفه‌ها در برنامه‌نويسي، بهينه بودن الگوريتم است. منظور از بهينه بودن اين است که با کمترين هزينه، بيشترين بازده را دريافت کنيم. منظور از هزينه، ميزان حافظه مصرفي و منظور از بازده، انجام سريع‌تر عمليات است. اين دو عامل معمولا رابطه مستقيم با يکديگر ندارند و معمولا سريع‌ترين الگوريتم‌ها، اگر هزينه پاييني داشته‌باشند، بسيار پيچيده‌اند و از طرف ديگر، الگوريتم‌هاي ساده (بازگشتي) هزينه بالايي دارند. روش‌هاي مختلفي براي مرتب سازي داده‌ها وجود دارد. از مولفه‌هاي مهم در الگوريتم‌هاي مرتب‌سازي ميزان مقايسه و ميزان جابه‌جايي است، در زير چند نمونه از آنها را بررسي مي‌کنيم:
ادامه مطلب...
 
فلوچارت
آموزش مقدماتي
نوشته شده توسط محمد حسين سعادت فر   

يكي از مواردي كه هر الگوريتم نويسي بايد بداند، فلوچارت است. مبحثي بسيار ساده و در عين حال كاربردي! پس به بررسي اين مطلب مي پردازيم. مطالب زير از ويكيپديا استخراج شده اند.

ادامه مطلب...
 
الگوريتم مرتب سازي حبابي
آموزش مقدماتي
نوشته شده توسط محمد حسين سعادت فر   

اين الگوريتم ساده ترين و معروف ترين الگوريتم براي مرتب سازي داده است.

فرض کنید می‌خواهیم n داده به صورت صعودی مرتب شوند. عنصر اول را با با عنصر دوم مقایسه کرده، و در صورتی که عنصر اول بزرگتر باشد باشد جای عنصر اول و دوم را عوض می‌کنیم. همین کار را با عناصر دوم و سوم انجام می‌دهیم و همینطور عناصر سوم و چهارم ، الی آخر. وقتی این کار تمام شد بزرگ‌ترین عنصر بین داده‌ها به آخر لیست می‌رسد . حالا یک بار دیگر از اول این کار را انجام می‌دهیم اما این بار تا عنصر (n -۱)ام ادامه می‌دهیم (عنصر nام در مرحله اول در جای خودش قرار گرفته). باز هم این کار را تا عنصر (n - ۲)ام تکرار می‌کنیم ، و بازهم .... تا اینکه بالاخره داده‌ها مرتب می‌شوند.

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


صفحه 1 از 2