الگوریتم های مختلف ممکن است یک عمل را با دستورات مختلف در مدت زمان، جا، وبا تلاش کمتر یا بیشتری نسبت به بقیه انجام دهد. برای مثال با داشتن دو دستور تهیه ی سالاد سیب زمینی، یکی ممکن است قبل از جوشاندن اول سیب زمینی را پوست بکند در حالی که دیگری این دو مرحله را برعکس انجام دهد، و هر دو این مراحل را برای تمام سیب زمینی ها تکرار می کنند تا وقتی که سالاد سیب زمینی آماده طبخ شود. >!—مثال ضعیف... چه کسی سیب زمینی ها را جدا جدا می جوشاند؟ و معمولاً تهیه ی سالاد نیازی به پخت و پز ندارد. الگوریتم ها به خاطر روش پردازش اطلاعات توسط کامپیوتر اساسی و حیاتی هستند، چون یک برنامه کامپیوتری اساساً یک الگوریتم است که به کامپیوتر می گوید برای انجام یک عمل خاص مثل محاسبه حقوق کارمندان و یا چاپ ورقه گزارش دانش آموزان،چه مراحل خاصی را (با چه نظم خاصی) اجرا کند،.به این صورت، یک الگوریتم را می توان هر دنباله از دستوراتی که قابل اجرا توسط یک Turing complete باشد به حساب آورد . به طور نمونه ای هنگامی که الگوریتم کار پرازش اطلاعات را انجام می دهد، داده از طریق یک وسیله یا منبع ورودی گرفته، به یک وسیله خروجی یاsink نوشته و / یا برای استفاده در زمانی دیگر ذخیره می شود. داده ذخیره شده به عنوان بخشی از حالت درونی««internal state نهاد مجری الگوریتم تلقی می گردد. برای اعمال محاسباتی از این قبیل، الگوریتم باید به دقت تعریف شود :یعنی طوری مشخص شود که برای حالت مختلف محتمل معتبر باشد. یعنی تمام مراحل شرطی باید به طور سیستماتیک بررسی شود ; حالت به حالت.ضابطه مربوط به هر حالت باید واضح (و محاسبه پذیر) باشد. برای مفاهیم فرعی(alternative) تشکیل دهنده یک الگوریتم برنامه نویسی تابعی و برنامه نویسیی منطقی را ببینید. اجرای الگوریتم الگوریتم ها نه تنها توسط برنامه های کامپیوتری بلکه اغلب توسط دستگاه های دیگر، از جمله شبکه بیولوژیکی عصبی (برای مثال چگونگی انجام محاسبات توسط مغز انسان و یا اینکه یک حشره چگونه غذا را رد یابی می کند)، یا ]]مدارهای الکتریکی[ و در دستگاه های مکانیکی به کار گرفته می شود. تحلیل و مطالعه الگوریتم ها یک شاخه از علم کامپیوتر است و اغلب به طور انتزاهی (بدون استفاده از هیچ زبان برنامه نویسی خاص، یا دیگرابزار) انجام می شود. از این نظر، به دیگر disciplineهای ریاضی شبیه است که در آن ها تحلیل بر disciplineهای زمینه یک الگوریتم، تمرکز دارد و نه بر هر اجرای خاصی از الگوریتم. یک راه شامل کردن (و بعضی مواقع رمزگذاری) الگوریتم ها نوشتن شبه دستور العمل یا برنامه است. فرض کنید آرایه ای از اعداد مرتب نشده تصادفی دارید وهدف ما پیدا کردن بزرگترین عدد است.با یک نگاه به مسئله متوجه می شوید که باید تمام اعداد آرایه را برسی کنید. با کمی فکر کردن متوجه می شوید که هر عدد را فقط یک بار باید بررسی کنید.با این جزییات در اینجا یک الگوریتم ساده برای آن آرایه شده است: فرض کنید که اولین عضو آرایه بزرگترین عدد است. عدد بعدی را با این عدد مقایسه کنید. فقط در حالتی که آن عدد بزرگتر است،آنرا بزرگترین عدد فرض کنید. مرحله 2 و 3 را تا پایان آرایه تکرار کنید. در اینجا یک رمز گذاری رسمی تر یک الگوریتم در یک شبه برنامه که شبیه بیشتر زبان های برنامه نویسی است آمده است: یک آرایه با نام "List" داریم. largest = List1 counter = 2 while counter <= length(List): if Listcounter > largest: largest = Listcounter counter = counter + 1 print largest تاریخچه پیدایش الگوریتم کلمه "الگوریتم" در اصل از نام ریاضی دان قرن نهم ، الخوارزمی ، گرفته شده است.کلمه الگوریسم«حساب در اصل تنها به قوانین انجام محاسبات با اعداد عربی اطلاق می شد، اما در قرن 18 به "الگوریتم "بسط یافت. انواع الگوریتم را نام ببرید راه های زیادی برای دسته بندی الگوریتم ها وجود دارد، تواناییها و قابلیت های هر دسته بندی موضوع بحث کنونی بوده است. یکی از معیار های دسته بندی اسلوب شناسی طرح و یا الگو می باشد. تعداد معینی الگو برای یک الگوریتم وجود دارد که هر کدام از بقیه متمایز است. از این گذشته هر دسته شامل نوع های مختلفی از الگوریتم ها می شود.چند تا از الگو های متداول عبارت است از: تقسیم و موفقیت. الگوریتم تقسیم و موفقیت مرحله های یک مسئله را به مراحل کوچکتری از آن مسئله (معمولاً با استفاده از روش باز گشتی )تقسیم می کند، تا وقتی که مستقیماً قابل بیان با زبان برنامه نویسی موجود شود. معیار دیگر برای دسته بندی الگوریتم ها اجرای آن ها است. الگوریتم باز گشتی که در برنامه نویسی تابعی «functional programming) متداول است، الگوریتمی است، که تا رسیدن به حالتی خاص، مکرراً خود را فراخوانی می کند. الگوریتم ها با این فرض مورد بررسی قرار می گیرند که آن ها در یک زمان یک دستور از الگوریتم را اجرا می کنند.این کامپپیوتر ها را گاهی کامپیوتر های سری می نامند.الگوریتمی که برای چنین محیطی طراحی شود الگوریتم سری نامیده می شود در برابر الگوریتم موازی، که از معماری ای استفاده می کنند که در آن چند پردازنده می توانند در آن واحد بر یک مسائله کار کنند. احتمالاً الگوریتم های استدلالی مختلف در این دسته قرار می گیرند، همان گونه که اسم شان (مثل الگوریتم عمومی) عملشان را توصیف می کند.
الگوریتم چیست و انواع آن کدامند؟
پاسخ ها: {{ repliesNum }}
پاسخ انتخاب شده
در پاسخ به: {{ reply.reply_to.name }}
در پاسخ به
این پیام حذف شده است.