الگوریتم ترتیبی
فهرست مطالب مقاله الگوریتم ترتیبی
مفهوم الگوریتم ترتیبی چیست؟ تقریبا همه الگوریتم ها الگوریتم ترتیبی هستند ولی شرط دارد. الگوریتم دستورات گام به گام برای حل یک مسئله خاص در زمان مشخص است. مثلا درست کردن چای از نقطه صفر شروع میکنیم به صورت زیر:
شروع
آب را بجوشانید
چای خشک را در قوری بریزید
آب جوش را اضافه کنید
چند دقیقه صبر کنید
در فنجان بریزید
پایان
این یک الگوریتم تزتیبی طبیعی است بدون شرط یا تکرار گام به گام انجام میشود. تمامی دستورات غذا الگوریتم های ترتیبی هستند. الکوریتم ترتیبی چیست؟ الگوریتم ترتیبی یکی از ساده ترین و پایه ایترین الگوریتم ها در علم کامپیوتر میباشد. در این الگوریتم دستور العمل ها دقیقا به همان ترتیبی که نوشته شده اند اجرا میشوند. هیچ شاخه شرطی تکرار یا انشعاب پیچیده ای در جریان اجرای ان وجود ندارد.
هدف اصلی و مهم الگوریتم ترتیبی انجام مجموعه ای از کار ها به صورت منظم و گام به گام میباشد تا در آخر به نتیجه مطلوب برسد. این الگوریتم معمولا در مسائل ساده و فرایند هایی که ترتیب انجام مراحل اهمیت دارد، به کار میرود. به دلیل ساختار مستقیم و قابل پیش بینی، فهم و پیاده سازی ان برای مبتدیان اسان است.
الگوریتم های ترتیبی پایه ای برای درک انواع دیگر الگوریتم ها مثل: شرطی و تکراری محسوب میشود. در برنامه نویسی، بیشتر دستورات ساده مثل: محاسبات ریاضی، ورودی و خروجی داده ها، از این نوع هستند. الگوریتم ترتیبی نمادی از نظم و سادگی و اجرای گام به گام در فرایند حل مسئله میباشد.
الگوریتم ترتیبی چیست؟
الگوریتی که تمامی دستورات ان به ترتیب نوشته شده است و یکی پس از دیگری اجرا میشود. هیچ شرط یا تکراری در میان ان وجود ندارد. الگوریتم ترتیبی مجموعه ای از دستور العمل ها است که، به صورت پشت سر هم و بدون هیچ پرش یا تکرار اجرا میشود. در این الگوریتم هر گام پس از پایان گام قبلی اجرا میشود تا در آخر به نتیجه نهایی برسد. جریان اجرای برنامه کاملا قابل پیش بینی است.
این الگوریتم معمولا در مسائل ساده و مراحلی که ترتیب انجام کار اهمیت دارد کاربرد دارند. در ان از ساختار های شرطی یا حلقه های تکرار استفاده نمیشود یا بسیار محدود است. به ظور مثال: محاسبه مجموع دو عدد است که در چند گام مشخص انجام میشود.
الگوریتم ترتیبی پایه ای ترین نوع الگوریتم ها در یادگیری منطق برنامه نویسی است.الگوریتم ترتیبی اجرای ان o(1) است و فضای ان هم o(1) است یعنی فضا ان ثابت است و همچنین اجزای ان هم ثابت است و تقریبا نادیده گرفته میشود و ترتیب اجرای دستورات در ان بسیار مهم است.
بیشتر برنامه هایی که مینویسیم ترتیبی هستند. در برنامه های پیشرفتع امروز که نوشته میشوند تمامی الگوریتم هایی که نوشته میشوند ترتیبی هستند و خیلی کم پیس میاید که یک الگوریتم تکرار یا شرطی در ان بوجود بیاید.
ویژگی های الگوریتم ترتیبی:
- ساده ترین نوع الگوریتم
- همه مراحل قطعیت دارند
- ترتیب اجرای دستورات مهم است
مثال الگوریتم ترتیبی ، (جمع دو عدد):
شروع
عدد اول را بگیر و در value 1 میریزیم
عدد دوم را میگیریم و در value 2 میریزیم
حاصل جمع را محاسبه میکنیم
نتیجه را نمایش میدهیم
پایان
سودوکد مثال جمع دو عدد به شرح زیر است:
START
input value1
input value2
sum (value1+value2)
output sum
END
فلوچارت مثال جمع دوعدد به شرح زیر است:

مثال الگوریتم ترتیبی (محاسبه محیط مستطیل):
شروع
طول را بگیر (length)
عرض را بگیر (width)
محیط = (طول + عرض) * 2
پایان
سودوکد مثال محیز مستطیل به شرح زیر است:
START
input length
input width
perimeter (length +width) *2
“output “perimeter is
perimeter
END
ساختار کلی الگوریتم های ترتیبی
ساختار الگوریتم های ترتیبی بسیار ساده است چون تمام دستورات به صورت پشت سر هم و گام به گام اجرا میشوند. در این الگوریتم هیچ پرش، شرط یا تکرار پیچیده ای وجود ندارد، اجرای برنامه از ابتدا شروع شده و تا پایان به ترتیب ادامه دارد. در الگوریتم های ترتیبی اجرای مراحل به ترتیب و بدون انشعاب است. اگر یک دستور شرطی یا حلقه اضافه شود دیگر الگوریتم از حالت ترتیبی خارج میشود و به نوع شرطی یا تکراری تبدیل میشود. ساختار ان معمولا شامل بخش های زیر میباشد:
شروع (Start):
نقطه اغاز الگوریتم که اجرای مراحل از اینجا شروع میشود.دریافت داده ها (Input):
مقادیر و یا اطلاعات مورد نیاز برای انجام محاسبات از کاربر یا منبعی دیگر گرفته میشود.پردازش داده ها (Process):
عملیات محاسباتی یا منطقی بر روی داده ها انجام میشود، مثل: جمع، ضرب، مقایسه یا تبدیل و…نمایش خروجی (Output):
نتیجه ی عملیات و یا پردازش انجام شده به کاربر یا سیستم نمایش داده میشود.پایان (End):
الگوریتم پس از اجرای همه مراحل خاتمه مییابد.

تفاوت الگوریتم ترتیبی با سایر الگوریتم ها:
تفاوت الگوریتم ترتیبی با سایر الگوریتم ها در نحوه اجرا مراحل و جریان کنترل برنامه است.
نحوه اجرا: تمام دستورات به ترتیب و پشت سر هم اجرا میشوند.
ویژگی ها: هیچ شرط و تکرار یا شاخه ای در مسیر اجرا وجود ندارد.
کاربرد ها: برای مسائل ساده و گام به گام
مزیت ها: ساده، قابل درک و سریع در طراحی
عیب: برای مسائل پیچیده یا دارای تصمیم گیری مناسب نیست
مزایای الگوریتم ترتیبی:
سادگی در طراحی و درک:
چون مراحل اجرای ان پشت سر هم و بدون شاخه یا تکرار است، طراحی و فهم ان بسیار اسان میباشد.خوانایی بالا:
به راحتی میتوان مراحل الگوریتم را دنبال کرد و متوجه شد هر گام چه کاری انجام میدهد.اشتباه زدایی اسان:
به دلیل شفاف بودن مسیر اجرا، یافتن خطا و رفع ان سریع و ساده میباشد.اجرای سریع برای مسائل ساده:
به دلیل اینکه تصمیم گیری و تکرار ندارد، اجرای ان بدون وقفه و با سرعت انجام میشود.مناسب برای اموزش مقدماتی:
بهترین نوع الگوریتم برای یادگیری مفاهیم اولیه برنامه نویسی و منطق الگوریتم میباشد.پیش بینی پذیری رفتار برنامه:
ترتیب اجرای مراحل مشخص است و خروجی ان به راحتی قابل پیش بینی میباشد.کاربرد در فرایند های گام به کام و خطی:
مثل: محاسبه محیط مستطیل، جمع دو عدد، تبدیل دما، یا خواندن و نوشتن داده به ترتیب.
محدودیت های الگوریتم ترتیبی:
عدم امکان پردازش موازی: همه دستورات باید پشت سر هم اجرا شوند و نمیتوان چند کار را هم زمان انجام داد.
زمان اجرای طولانی برای مسائل بزرگ: با افزایش حجم داده ها زمان اجرا به شدت افزایش میابد.
وابستگی کامل به ترتیب دستورات: تغییر در ترتیب اجرا ممکن است نتیجه نهایی را تغییر بدهد.
محدودیت در مقیاسپذیری: الگوریتم های ترتیبی برای داده های بسیار بزرگ یا سیستم های توزیع شده مناسب نیستند.
کارایی پایین روی سخت افزار چند هسته ای: نمیتواند از قابلیت های پردازش همزمان استفاده کند.
کاربرد های الکوریتم ترتیبی در علوم کامپیوتر چیست؟
-
پردازش داده ها و محاسبات پایه: جمع، ضرب، حداقل و حداکثر مجموعه داده ها. پردازش لیست ها و ارایه ها به ترتیب.
-
مرتب سازی و جستجو: جستجوی ترتیبی در ارایه ها یا لیست ها.
-
پردازش رشته ها: بررسی رشته کاراکتر به کاراکتر، شمارش کلمات، پالیندروم. تبدیل حروف و شمارش تعداد حروف یا کلمات.
-
کنترل جریان برنامه: اجرای گام به گام عملیات شرطی و حلقه ها. محاسبات مرحله ای در برنامه های کاربردی یا سیستم های کوچک.
-
کار با فایل ها و ورودی| خروجی: خواندن یا نوشتن داده ها به ترتیب. پردازش خطوط یک فایل به صورت ترتیبی .
-
پیاده سازی الگوریتم های ریاضی و علمی ساده: فاکتوریل، دنباله فیبوناچی، جمع اعداد. شبیه سازی فرایند های ساده که نیازی به پردازش هم زمان ندارند.
-
اموزشی و درک مفاهیم پایه: درک جریان داده ها و پایه ای برای الگوریتم های پیچیده تر. یادگیری نحوه اجرای دستورات و جریان داده ها در برنامه ها. الگوریتم ترتیبی به عنوان پایه برای الگوریتم های پیچیده تر استفاده میشود.
جایگاه الگوریتم ترتیبی در فلوچارت ها:

-
نمایش گام به گام دستورات:
هر دستور الگوریتم ترتیبی به یک مستطیل در فلوچارت تبدیل میشود. ترتیب قرار گیری مستطیل ها نشان دهنده ترتیب اجرای دستورات است.
-
پیوستگی جریان:
دستورات به صورت پشت سر هم و با فلش متصل نمایش داده میشوند. این ارتباط پشت سر هم، همان مفهوم ترتیبی بودن الگوریتم را نشان میدهد.
- سادگی نمایش
الگوریتم ترتیبی در فلوچارت نیاز به نماد های پیچیده مثل تصمیمگیری یا حلقه ندارد مگر ترکیب با شرط یا تکرار باشد. بنابراین برای مسائل ساده و پردازش ترتیبی داده ها بسیار مناسب است.
نتیجه گیری:
الگوریتم ترتیبی یکی از ساده ترین و پایه ای ترین الگوریتم ها در علوم کامپیوتر است که، دستورات ان به صورت پشت سر هم و مرحله به مرحله اجرا میشود، این مزیت باعث میشود پیاده سازی و درک ان خیلی اسان باشد. محدودیت هایی مثل: عدم امکان پردازش موازی، وابستگی کامل به ترتیب دستورات، زمان اجرای طولانی برای مسائل بزرگ و کارایی پایین روی سخت افزار چند هسته ای را دارا است.
تحلیل زمانی و مکانی الگوریتم ترتیبی ساده است و معمولا زمان اجرا جمع زمان دستورات و حافظه مصرفی متغیر ها و ارایه ها را شامل میشود، کاربرد های ان گسترده و شامل پردازش داده ها، مرتب سازی و جستجو، پردازش رشته ها، محاسبات ریاضی و علمی ساده، کنترل جریان برنامه و کار با فایل ها است.
در فلوچارت ها الگوریتم ترتیبی با مستطیل های عملیاتی نمایش داده میشوند که، فلش ها ترتیب اجرای دستورات را مشخص میکنند، این الگوریتم پایه ای برای یادگیری مفاهیم برنامه نویسی و الگوریتم های پیچیده تر است. به دلیل سادگی و شفافیت جریان اجرای ان برای مسائل کوچک و اموزشی بسیار مناسب است و با وجود محدودیت ها، نقش مهمی در اموزش و توسعه الگوریتم های دیگر دارد.
مقالات مرتبط
چرا استفاده از اپلیکیشنهای موبایل ضروریست؟
گوشی تلفن همراه، تقریبا یک دهه است که با تغییر ماهیتی جدی و آرام پا به زندگی ما گذاشته است. به گونهای پیش رفته که برای افراد تصور زندگی حتی
بهترین زبان ساخت اپلیکیشن موبایل
بسیاری از کسبوکارها، برای بقا در فضای رقابتی جهان امروز اقدامات مختلف و بهبود دهندهای را انجام میدهند. یکی از آن اقدامات ساخت اپلیکیشن موبایل برای تسریع و تسهیل فرآیندهای
ایجاد تخفیف در اپلیکیشن
برای ایجاد تخفیف در اپلیکیشن کافی است پس از افزودن “تخفیف” از قسمت “افزودن صفحات” برروی آن کلیک کنید و در پنجره باز شده برروی دکمه کلیک کنید. با کلیک
الگوریتم شرطی
الگوریتمهای شرطی یکی از پایهایترین مفاهیم در برنامهنویسی هستند که به برنامه امکان تصمیمگیری بر اساس شرایط مختلف را میدهند. در این نوع الگوریتمها، برنامه ابتدا یک شرط منطقی را بررسی میکند و سپس با توجه به درست یا نادرست بودن آن، مسیر مناسب را اجرا میکند. ساختارهای شرطی معمولاً با دستورهای if، else و else if پیادهسازی میشوند و میتوانند بهصورت تکمسیره، دومسیره یا چندمسیره طراحی شوند. در این مقاله، مفهوم الگوریتم شرطی، انواع ساختارهای شرطی، نقش عملگرهای حسابی، مقایسهای، منطقی و انتسابی، همچنین ترتیب اولویت عملگرها بررسی شده است. علاوه بر آن، با استفاده از مثالهایی به یادگیری شما کمک خواهیم کرد.