كيف تكتب الخوارزميات للمبتدئين

click fraud protection
العمل في وقت متأخر في مكتبه

حقوق الصورة: vgajic / E + / GettyImages

قد يبدو ابتكار خوارزميات جديدة أمرًا مخيفًا للمبرمجين الجدد ، لكنها مهارة يمكن ممارستها مثل أي مهارة أخرى. ابدأ بالبحث عن كتاب عن مشاكل الخوارزمية للمبتدئين أو عن طريق أخذ فصل في علوم الكمبيوتر عبر الإنترنت أو دون اتصال بالإنترنت. تدرب على إتقان أساسيات تصميم الخوارزمية ، بما في ذلك تقدير التعقيد ووقت التشغيل ، والتحقق لحالات الحافة التي قد تسبب مشاكل لخوارزمية الكمبيوتر ، وتقسيم المشكلات إلى أصغر القطع.

ما هي خوارزمية الكمبيوتر

الخوارزمية هي إجراء يتبعه الكمبيوتر أو الإنسان لحل مشكلة ما. القسمة المطولة هي عينة من الخوارزمية التي يتعلم الكثير من الناس القيام بها في المدرسة. تعتبر الخوارزمية الإقليدية ، المستخدمة للعثور على القاسم المشترك الأكبر لرقمين ، مثالًا شائعًا آخر.

فيديو اليوم

تتم كتابة خوارزمية الكمبيوتر في النهاية بلغة برمجة يمكن للكمبيوتر فهمها ، ولكن عندما يتم إنشاء الخوارزمية غالبًا ما يكتبه المبرمجون وعلماء الكمبيوتر أولاً بشكل غير رسمي كنثر ثم بشكل أكثر رسمية في تنسيق عام يسمى كود مزيف.

تبدو الشفرة الزائفة وكأنها لغة برمجة ، ولكن نظرًا لأنها مصممة ليقرأها البشر بدلاً من أجهزة الكمبيوتر ، فإنها لا تحتوي على قواعد نحوية صارمة.

أمثلة خوارزمية بسيطة للمبتدئين

غالبًا ما يتم تدريس الأمثلة الشهيرة للخوارزميات لعلماء ومبرمجي الكمبيوتر المبتدئين. بعض الأمثلة هي خوارزمية Dijkstra ، والتي تُستخدم في نظرية الرسم البياني للعثور على أقصر مسار بين نقطتين ؛ دمج الفرز ، والذي يستخدم لفرز قوائم البيانات ؛ وخوارزمية RSA المستخدمة لتشفير البيانات. يتوفر العديد منها عبر الإنترنت في كتب مدرسية ومقاطع فيديو ومواد دراسية مجانية.

يحتوي موقع التعليم عبر الإنترنت Khan Academy على العديد من الأمثلة على الخوارزميات التي يمكن للمبتدئين تجربتها. الجامعات الكبرى مثل هارفارد وستانفورد ومعهد ماساتشوستس للتكنولوجيا تضع مناهج دراسية المواد ومقاطع الفيديو للدورة التدريبية مع الخوارزميات الشائعة المتاحة عبر الإنترنت لعلوم الكمبيوتر التمهيدية الطبقات.

هناك أيضًا مواقع بها مشكلات في مسابقة البرمجة وتفسيرات لكيفية حلها ، والتي يمكن أن تساعد الأشخاص المهتمين بتطوير مهاراتهم.

اعتبارات الخوارزمية

عندما تبتكر خوارزمية جديدة ، فأنت تريد التأكد من أنها تعمل في جميع الحالات التي تعتقد أنها يجب أن تفعلها ومحاولة فهم مدى فعاليتها. عادةً ما يقسم المبرمجون الخوارزمية إلى أجزاء منفصلة حتى يتمكنوا من التفكير في كيفية عمل كل جزء والوقت الذي يستغرقه. وهذا ما يسمى بالتصميم المعياري.

إنها لفكرة جيدة أن تختبر خوارزمية بنفسك باستخدام القلم والورق في بعض الحالات البسيطة قبل البدء في كتابة التعليمات البرمجية. عندما تفكر في الكفاءة ، فكر في متوسط ​​الحالة والمواقف الشائعة التي من المحتمل أن تواجهها الخوارزمية وأسوأ وقت تشغيل. غالبًا ما يتم تمثيل وقت التشغيل الأسوأ بما يسمى Big-O Notation.