"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > ضياء - إعادة تنفيذ القائمة الدائرية المرتبطة بشكل مضاعف

ضياء - إعادة تنفيذ القائمة الدائرية المرتبطة بشكل مضاعف

تم النشر بتاريخ 2024-11-08
تصفح:736

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

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

قائمة مرتبطة بشكل مضاعف

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

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

[head]  [nó1]  [nó2]  [tail]

قائمة دائرية

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

القائمة الدائرية المرتبطة بشكل مضاعف وعلاقتها بأنظمة التشغيل

استخدام قائمة دائرية مزدوجة الارتباط يجعل نظام التشغيل يتمتع بميزة الجدولة الدائرية.

ومع ذلك، بعد تنفيذ العملية الأخيرة، يعود النظام إلى العملية الأولى ويستمر في التنفيذ.

تخيل أن نظام التشغيل يحتوي على ثلاث عمليات:

[P1]  [P2]  [P3]  [P1] ...

بعد انتهاء P3 من وقت التنفيذ، ستعود القائمة مباشرة إلى P1، مما يضمن التنفيذ المستمر.

يمكن العثور على رمز نظام التشغيل الحالي هنا.

Dia - Reimplementando lista circular duplamente encadeada

بيان الافراج تتم إعادة طباعة هذه المقالة على: https://dev.to/matheusgb/dia-20-reimplementando-lista-circular-duplamente-encadeada-4ba8 إذا كان هناك أي انتهاك ، يرجى الاتصال بـ [email protected] لحذفه.
أحدث البرنامج التعليمي أكثر>

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

Copyright© 2022 湘ICP备2022001581号-3