أنا أفضل اللغات عالية المستوى (مثل بايثون، جافا, C+, C#, فيجوال بيسك، جافاسكربت، باسكال) التي تميل إلى أن تكون ديناميكية. والسبب هو أنه عند استخدامها، لا داعي للقلق بشأن التفاصيل منخفضة المستوى التي قد تعترض طريق فهم الخوارزمية. بعد ذلك، عادةً سوف تعمل على تنفيذ نفس الخوارزمية بلغة ذات مستوى أدنى للاهتمام بالتفاصيل التي يمكنك تجاهلها بطريقة أخرى، لأن الأداء عادةً ما يكون مهمًا عند تطوير تلك الخوارزمية المعقدة.
يمكن استخدام الخوارزميات للقيام بأكثر من مجرد برنامج حيث يمكن تدريسها وعملها باللغة التي تدرس فيها بالنسبة إلى لغة (لغات) البرمجة التي اقترحتها، فإن أحد الأشياء التي يجب إدراكها هو أنه بمجرد تركيزك على لغة التنفيذ، يتم وضع قيود تلقائيًا على خوارزمياتك لأن لغة التنفيذ قد لا تدعم الشيء تريد القيام به لذا عليك دمج والاختيار بين اللغات المذكورة أعلاه لبناء خوارزمية مميزة.
برأيي + + C هي أفضل لغة لكتابة خوارزميات معقدة ليس فقط للمنافسة ولكن أيضًا لاستخدامها في حل مشاكل الخوارزمية وهيكل البيانات. يزيد استخدام لغة + + C من المستوى الحسابي للتفكير في الذاكرة وتعقيد الوقت ومستوى تدفق البيانات. يعد استخدام + + C اللغة الأكثر فاعلية التي تعلمك مهارات إدارة الذاكرة، وتعقيد الوقت في الرموز والتعليمات، والتي سوف تتفوق عليك بالفعل من بين غيرها وترى الجمال الحقيقي للغة، كما ستكون الخوارزميات أفضل وأعلى بكثير منها عند استخدام اللغات الأخرى.
إذا استخدمت هذه اللغة، فإنها تزيد من قدرة عقلك على التفكير والحل من حيث مستوى إدارة الذاكرة.
مثال آخر على لغات جيدة لكتابة خوارزميات هي لغة برمجة باسكال فهي سهلة الفهم وبناء الخوارزميات وهي جيدة للمبتدئين ومع زيادة الخبرة البرمجية، يمكنك تجربة لغات أكثر تخصصًا مثل + + C.
تطوير الخوارزمية بشكل عام صعب فما بالك في حال كانت معقدة، أعتقد أن الأمر سيستغرق وقتًا والعديد من التجارب لتعلم كيفية تطوير خوارزميات جيدة ومعقدة في نفس الوقت، لذا في البداية خذ وقتك في تجربة اللغات المذكورة أعلاه، ثم ابدأ بكتابة الخوارزمية حيث يمكنك التعلم من خلال مواقع على الإنترنت أو فيديوهات على اليوتيوب ستساعدك كثيرا، وحتى لو استغرق الأمر وقتًا أطول قليلاً لتعلم بناء الجملة فلا تيأس واستمر بالتجربة.