قائمة عامة بهياكل البيانات التي تم تنفيذها في 15 لغة برمجة مختلفة. Java ، JavaScript ، Kotlin ، C#، C ++ ، Objective-C ، Swift ، PHP ، Python ، Ruby ، Type Script ، Visual Basic ، C ، Scala and Go. سأقوم بتنفيذ 30 هياكل بيانات مختلفة والعديد من الخوارزميات معها بالإضافة إلى تقديم تفسيرات مفصلة حول كل بنية بيانات. هذا عمل مستمر وهو مشروع ضخم للغاية ، لذا يرجى التحلي بالصبر لأن لدي حياة ووظيفة بدوام كامل وأنا الوحيد الذي يعمل في هذا الوقت. يهدف هذا المشروع إلى مساعدة المطورين الجدد ، وخريجي المدارس ، والمطورين الذين يدرسون على أنفسهم تعلم وفهم المفاهيم الأساسية لهياكل البيانات للمساعدة في بناء أساس لمفاهيم الهندسة الأساسية وتصميم الخوارزمية في أي لغة يشعرون بالراحة معها. الهدف من هذا المشروع هو إظهار مبادئ العلوم والهندسة المتقدمة في علوم الكمبيوتر والهندسة بطريقة بسيطة وسهلة الاستخدام. تتم كتابة الرمز البسيط للغاية حتى يتمكن المطور الأحدث من متابعة المواضيع المتقدمة وفهمها بسهولة.
تم تنفيذ Java و C#و Kotlin و Visual Basic بالكامل ولكن لم يتم اختباره ، وقد تم بدء C ++ و JavaScript و PHP ولكن لم ينتهوا. مع 450 من هياكل البيانات للكتابة في 15 لغة مختلفة ، أريد أن أخرج غالبية الكود من الطريق أولاً وإصلاح الأخطاء الأخيرة. لحسن الحظ ، هذه كلها بسيطة للغاية في الاختبار بمجرد أن أفعل ولا ينبغي أن تأخذ هذا الوقت كثيرًا.
فيما يلي قائمة بالروابط لكل من هياكل البيانات المكتملة في اللغات المعنية. فقط ابحث عن الشخص الذي تريده وانقر على الرابط.
صفيف دائري في PHP
قائمة مرتبطة بشكل مضاعف في PHP
قائمة مرتبطة في PHP
شجرة ثنائية في PHP
كومة مصفوفة في PHP
مكدس مرتبط في PHP
قائمة انتظار مصفوفة في PHP
قائمة انتظار مرتبطة في PHP
مجموعة دائرية في جافا سكريبت
ArrayList في JavaScript
قائمة مرتبطة بشكل مضاعف في JavaScript
القائمة المرتبطة في جافا سكريبت
شجرة ثنائية في جافا سكريبت
شجرة AVL في JavaScript
شجرة سوداء حمراء في جافا سكريبت
مكدس مصفوفة في جافا سكريبت
مكدس مرتبط في JavaScript
قائمة الانتظار في جافا سكريبت
قائمة انتظار مرتبطة في JavaScript
مجموعة دائرية في جافا
ArrayList في Java
مجموعة مجموعة في جافا
صفيف ترابط في جافا
صفيف فرز في جافا
قائمة مرتبطة بشكل مضاعف في جافا
قائمة مرتبطة في جافا
تخطي القائمة في جافا
مجموعة مرتبطة في جافا
شجرة ثنائية في جافا
B-Tree في Java
التوازن الذاتي شجرة ثنائية في جاوة
شجرة الرشق في جافا
شجرة سوداء حمراء في جافا
شجرة AVL في جافا
مكدس مصفوفة في جافا
كومة دائرية في جافا
مكدس مرتبط في جافا
قائمة انتظار في جافا
قائمة انتظار الأولوية في جافا
قائمة انتظار دائرية في جافا
ديك في جافا
قائمة انتظار مرتبطة في جافا
كومة مرتبطة في جافا
كومة مصفوفة في جافا
نوع الكومة في جافا
هاشميت في جافا
الهاشابل في جافا
رسم بياني غير موجه في جافا
الرسم البياني الموجه في جافا
صفيف دائري في C#
arraylist في C#
مجموعة مجموعة في C#
صفيف ترابط في C#
صفيف فرز في C#
قائمة مرتبطة بشكل مضاعف في C#
قائمة مرتبطة في C#
تخطي القائمة في C#
مجموعة مرتبطة في C#
شجرة ثنائية في C#
B-Tree in C#
التوازن الذاتي الشجرة الثنائية في C#
شجرة التمسك في C#
شجرة سوداء حمراء في C#
شجرة AVL في C#
مكدس مصفوفة في C#
كومة دائرية في C#
مكدس مرتبط في C#
قائمة انتظار صفيف في C#
قائمة انتظار الأولوية في C#
قائمة الانتظار الدائرية في C#
deque في c#
قائمة الانتظار المرتبطة في C#
كومة مرتبطة في C#
كومة مصفوفة في C#
كومة فرز في C#
hashset في c#
علامة التجزئة في C#
رسم بياني غير موجه في C#
الرسم البياني الموجه في C#
مجموعة دائرية في Visual Basic
arraylist في Visual Basic
مجموعة مجموعة في Visual Basic
صفيف ترابط في Visual Basic
صفيف فرز في Visual Basic
قائمة مرتبطة بشكل مضاعف في Visual Basic
القائمة المرتبطة في Visual Basic
تخطي القائمة في Visual Basic
مجموعة مرتبطة في Visual Basic
شجرة ثنائية في Visual Basic
B-Tree in Visual Basic
التوازن الذاتي الشجرة الثنائية في Visual Basic
شجرة الرشق في Visual Basic
شجرة سوداء حمراء في Visual Basic
شجرة AVL في C#
كومة مصفوفة في Visual Basic
كومة دائرية في Visual Basic
مكدس مرتبط في Visual Basic
قائمة انتظار مصفوفة في Visual Basic
قائمة انتظار الأولوية في Visual Basic
قائمة الانتظار الدائرية في Visual Basic
deque في Visual Basic
قائمة انتظار مرتبطة في Visual Basic
كومة مرتبطة في Visual Basic
كومة مصفوفة في Visual Basic
نوع الكومة في Visual Basic
hashset في Visual Basic
علامة التصنيف في Visual Basic
رسم بياني غير موجه في Visual Basic
الرسم البياني الموجه في Visual Basic
مجموعة دائرية في كوتلين
Arraylist في Kotlin
مجموعة مجموعة في كوتلين
صفيف ترابط في كوتلين
صفيف فرز في كوتلين
قائمة مرتبطة مضاعفة في كوتلين
قائمة مرتبطة في كوتلين
تخطي القائمة في كوتلين
مجموعة مرتبطة في كوتلين
شجرة ثنائية في كوتلين
B-Tree في Kotlin
التوازن الذاتي شجرة ثنائية في كوتلين
شجرة الرش في كوتلين
شجرة سوداء حمراء في كوتلين
شجرة AVL في جافا
مكدس مصفوفة في كوتلين
كومة دائرية في كوتلين
مكدس مرتبط في كوتلين
قائمة انتظار في كوتلين
قائمة انتظار الأولوية في كوتلين
قائمة انتظار دائرية في كوتلين
ديك في جافا
قائمة انتظار مرتبطة في كوتلين
كومة مرتبطة في كوتلين
كومة مصفوفة في كوتلين
نوع الكومة في جافا
Hashset في Kotlin
هاشبيل في كوتلين
رسم بياني غير موجه في كوتلين
الرسم البياني الموجه في كوتلين
قم بتنزيل أو استنساخ الريبو ، وتحميل IDE المفضل لديك ، واختر لغتك واختيار بنية البيانات الخاصة بك ، ويجب أن يكون الرمز جاهزًا للاستخدام. يرجى عدم اختبار هذا الرمز وقد يتطلب بعض التغييرات الطفيفة في العمل.
اعتمادًا على اللغة التي ترغب في استخدامها ، ستحتاج إلى IDE متوافق قادر على تشغيل نوع التعليمات البرمجية التي تستخدمها. نلاحظ أن هذه لم يتم تصميمها لتكون مشاريع ولكن لإضافتها إلى مشروعك الخاص. على سبيل المثال:
To use the C# Binary Tree, clone the tree and place it into your Visual Studio Project
To Use the Java Linked List, clone the List and place it into you IntelliJ project
ect. ect.
يرجى ملاحظة أن هذا الرمز كان يهدف إلى مساعدة المطورين الجدد على فهم مفاهيم هياكل البيانات المختلفة. عرض قسم المشاريع في هيكل اللغة والبيانات التي تريدها. إذا لم يتم نقل بنية البيانات المعنية إلى العمود المغلق ، فلن يتم اختبار الرمز وقد لا يعمل أو قد يحتاج إلى تعديل للعمل بشكل صحيح.
يرجى قراءة المساهمة. md و code_of_conduct.md للحصول على تفاصيل حول مدونة قواعد السلوك الخاصة بنا ، وعملية تقديم طلبات السحب إلينا.
انظر أيضًا قائمة المساهمين الذين شاركوا في هذا المشروع.
تم ترخيص هذا المشروع بموجب ترخيص معهد ماساتشوستس للتكنولوجيا - راجع ملف الترخيص.
هذا مشروع رائع لطالب جامعي لاكتساب انتهاء أو مطور آخر يريد الانتهاء من هياكل البيانات والخوارزميات. أنا متاح للمساعدة حسب الحاجة.
إذا كنت ترغب في المساهمة ، فيرجى الاتصال بي @ [email protected]. وإلا سأصل إليها عندما يكون لدي الوقت. تم الانتهاء من لغات قليلة ولكن لم يتم اختبارها. انظر أدناه للحصول على التفاصيل.