آیا میدانید که الگوریتم چیست؟
دستهبندی: کتاب برنامه نویسی

الگوریتم مجموعه دستورالعملهایی است که برای انجام یک کار خاص طراحی شده است. این میتواند یک فرآیند ساده باشد، مانند ضرب دو عدد، یا یک عملیات پیچیده، مانند پخش یک فایل ویدیویی فشرده باشد. به عنوان مثال دیگر، موتورهای جستجو از الگوریتمهای اختصاصی برای نمایش مرتبطترین نتایج از فهرست جستجوی خود برای سوالات خاص استفاده میکنند.
در برنامه نویسی رایانهای ، الگوریتمها اغلب به صورت توابع ایجاد میشوند. این توابع به عنوان برنامههای کوچکی عمل میکنند که میتوان با یک برنامه بزرگتر به آنها اشاره کرد. به عنوان مثال ، یک برنامه پردازش تصویر ممکن است شامل مجموعهای از توابع باشد که هر یک از الگوریتمهای سفارشی برای ارائه قالبهای مختلف فایل تصویر استفاده میکنند. یک برنامه ویرایش تصویر ممکن است شامل الگوریتمهایی باشد که برای پردازش دادههای تصویر طراحی شدهاند. نمونههایی از الگوریتمهای مورد استفاده در مبحث پردازش تصویر شامل برش، تغییر اندازه، تغییر میزان وضوح، تاری، کاهش قرمزی چشم و بهبود رنگ است.
در بسیاری از موارد ، روشهای مختلفی برای انجام یک عملیات خاص در یک برنامه نرم افزاری وجود دارد. بنابراین ، برنامهنویسان معمولاً به دنبال ایجاد کارآمدترین الگوریتمهای ممکن هستند. با استفاده از الگوریتمهای بسیار کارآمد، توسعهدهندگان میتوانند از اجرای سریع برنامههای خود اطمینان حاصل کرده و از حداقل منابع سیستم استفاده کنند. البته، همه الگوریتمها از روز اول کاملاً ایجاد نشدهاند و به مرور زمان باید خلق شوند. بنابراین ، توسعهدهندگان اغلب الگوریتمهای موجود را بهبود میبخشند و آنها را در به روزرسانیهای بعدی نرم افزار درج میکنند. وقتی نسخه جدیدی از یک برنامه نرم افزاری را مشاهده می کنید که "بهینه" شده یا "عملکرد سریع تری" دارد ، بیشتر بدان معنی است که نسخه جدید الگوریتمهای کارآمدتری را شامل میشود.
برای یادگیری الگوریتمهای مختلف و مشاهده مثالهای حل شده از آن میتوانید کتاب «آشنایی با برنامهنویسی کامپیوتر و کاربردهایی از آن در محاسبات عددی» اثر دکتر داود حسنزاده عضو هیات علمی گروه علوم پایه دانشگاه صنعتی اراک را از فروشگاه نشابازار تهیه نمایید. این کتاب شامل تمرینات متنوعی در زمینه الگوریتم نویسی است که موجب افزایش توانایی خواننده میگردد.
لینک خرید:
https://www.neshabazar.ir/?module=productpage&puc=p1355f0708ab