تم تجهيز الكود المصدر في هذا المشروع بـ " Edition -C Language Edition " للكتاب المدرسي "[Yan Weimin ، Wu Weimin Edition] و" مجموعة أسئلة بنية البيانات - إصدار اللغة "[Yan Weimin ، Wu Weimin ، Edition].
| كتاب بنية البيانات | مجموعة أسئلة بنية البيانات |
|---|---|
![]() | ![]() |
يتضمن هذا المشروع رمز مصدر الكتب المدرسية ورمز مصدر التمرين ، ويتم تقسيمه إلى 4 إصدارات ، وهي: cfree ، dev-c ++ ، clion ، و visualc ++ ، من بينها:
اختيار IDE
CFREE هو برنامج محلي ممتاز. ومع ذلك ، تم إيقاف المنتج لفترة طويلة ، وهناك بعض مشكلات التوافق على Win10 ويجب تعديلها.
Dev-C ++ هو برنامج مفتوح المصدر صغير وعملي مثل cfree. أهم شيء هو أنه متوافق مع Win10 ويوصى به.
يتطلب Clion القليل من المعرفة بـ CMake ويتطلب متطلبات أداء أعلى قليلاً لأجهزة الكمبيوتر المحمولة. ومع ذلك ، فإن منتجات Series JetBrains لها وظائف ممتازة ويوصى بشدة بتجربتها.
يتم إنتاج Microsoft Visual C ++ بواسطة Microsoft. إذا لم تأخذ C/C ++/C# والطرق الأخرى في المستقبل ، فلا يمكنك استخدامها أولاً. (ملاحظة: منذ عام 2018 ، تم استبدال VC ++ 6 بـ Microsoft Visual C ++ 2010 في المستوى الثاني من اختبار لغة الكمبيوتر C. إذا كان لديك احتياجات الدرجات ، فيرجى التعرف على هذه IDE)
يتم تخزين تحليل الأسئلة غير الرمز في "جمع أسئلة بنية البيانات " في تحليل التمرين .
注:
1. "CFree"是完整版本。"Dev-C++"/"CLion"/"VisualC++"是新增的版本,这三个版本最终会取代"CFree"版本。
2. "CFree"版本既可以用CFree直接打开,也支持用Dev-C++打开,所以当使用CFree遇到兼容问题时,可尝试用Dev-C++。
3. 上述四个版的代码是同步更新的,但是各版本之间相互独立,没有任何依赖关系,允许单独运行/测试。
4. 对所有版本的代码均未充分测试,尤其是很多代码没有完成的边界检查(原因是此处以实现算法正确性为目的,而较少考虑程序的健壮性),所以如有BUG请到Issues反馈。
الهدف العام هو ضمان الصواب ، وتحسين قابلية القراءة ، وتقليل صعوبة التعلم على وجه التحديد.
بعد استنساخ/تنزيل رمز المصدر إلى المنطقة المحلية ، يمكنك عرض ملفات ReadMe في كل فرع للحصول على معلومات المساعدة

| رقم سري | الرموز التعبيرية | المعنى في هذا المشروع | علامة الاختصار |
|---|---|---|---|
| (0) | ؟ | تهيئة المشروع | :tada: |
| (1) | تحديث الوثائق ، بما في ذلك على سبيل المثال لا الحصر على ReadMe | :memo: | |
| (2) | حرر رمز المصدر الجديد | :bulb: | |
| (3) | ♻ | تشير إعادة البناء بشكل أساسي إلى تعديل شفرة المصدر والتعليقات الحالية | :recycle: |
| (4) | ✏ | يشير التدقيق في التصحيح بشكل أساسي إلى تصحيح الأخطاء المطبعية ، وتعديل تخطيط رمز المصدر ، وتحديث التعليقات ، إلخ. | :pencil2: |
| (5) | ؟ | إصلاح الأخطاء في الكود | :bug: |
مدونة شخصية
مصدر مرجع emoji في معلومات الالتزام:
| الفصل | مهرجان | محتوى | يشمل الخوارزمية | ملاحظة |
|---|---|---|---|---|
| 01 مقدمة | حالة | حدد بعض الثوابت والوظائف المشتركة | ||
| 02 الجدول الخطي | SQLILL | جدول التسلسل | 2.3 ، 2.4 ، 2.5 ، 2.6 | بنية التخزين المتسلسلة من الجداول الخطية |
| الاتحاد | A = A∪B | 2.1 | ||
| MergesQList | ج = أ+ب | 2.2 ، 2.7 | جدول ترتيب دمج | |
| LinkList | قائمة الارتباط | 2.8 ، 2.9 ، 2.10 ، 2.11 | بنية تخزين السلسلة من الجداول الخطية | |
| ميرغيليست | ج = أ+ب | 2.12 | قائمة رابط دمج | |
| Slinklist | قائمة مرتبطة ثابتة | 2.13 ، 2.14 ، 2.15 ، 2.16 | ||
| اختلاف | (AB) ∪ (BA) | 2.17 | ||
| Dulinklist | قائمة ارتباط حلقة ثنائية الاتجاه | 2.18 ، 2.19 | ||
| Elinklist | قائمة ارتباط خطية ممتدة | 2.20 | ||
| ميرينجيل | ج = أ+ب | 2.21 | قائمة ارتباط خطية مدمجة وممتدة | |
| متعدد الحدود | في اتجاه واحد متعدد الحدود | 2.22 ، 2.23 | ||
| 03 كومة وقائمة الانتظار | sqstack | كومة | هيكل التخزين المتسلسل | |
| تحويل | تحويل الأولوية | 3.1 | تطبيق المكدس | |
| Lenedit | برنامج تحرير الخط | 3.2 | تطبيق المكدس | |
| المتاهة | طريقة المتاهة للعثور | 3.3 | تطبيق المكدس | |
| تعبير | تقييم التعبير | 3.4 | تطبيق المكدس | |
| هانوي | برج هانور | 3.5 | عودة | |
| Linkqueue | عمود سلسلة | بنية تخزين السلسلة | ||
| sqqueue | قائمة انتظار متتابعة | قائمة انتظار الحلقة ، هيكل التخزين المتسلسل | ||
| مصرفي | محاكاة قائمة انتظار البنك | 3.6 ، 3.7 | تطبيق قائمة الانتظار | |
| 04 سلسلة | Sstring | سلسلة التسلسل | 4.1 ، 4.2 ، 4.3 ، 4.5 | تخزين متسلسل |
| hstring | سلسلة كومة | 4.4 | تخزين متسلسل ، تخصيص ديناميكي للذاكرة | |
| lstring | سلسلة blockchain | تخزين متسلسل + تخزين السلسلة | ||
| KMP | خوارزمية KMP | 4.6 ، 4.7 ، 4.8 | سلسلة مطابقة الخوارزمية | |
| قائمة الكلمات | فهرس الكلمات الرئيسية | 4.9 ، 4.10 ، 4.11 ، 4.12 ، 4.13 ، 4.14 | تطبيق سلاسل الكومة والجداول الخطية | |
| 05 صفائف وجداول معممة | صفيف | مجموعة متعددة الأبعاد | ||
| tsmatrix | مصفوفة متناثرة | 5.1 ، 5.2 | كيفية تخزين طاولات الطلب الثلاثي | |
| RLSMatrix | مصفوفة متناثرة | 5.3 | كيفية تخزين جدول ترتيب الروابط المنطقية للصف | |
| القائمة المتقاطعة | مصفوفة متناثرة | 5.4 | طريقة تخزين قائمة الوصلات المتقاطعة | |
| اللمعان | الجدول المعمم | 5.5 ، 5.6 ، 5.7 ، 5.8 | تمثيل تخزين قائمة روابط الرأس والذيل | |
| Glist-e | الجدول المعمم | تمثيل تخزين القائمة المرتبطة الخطية الممتدة | ||
| mplist | M-Part كثير الحدود | تخزين السلسلة | ||
| 06 شجرة وشجرة ثنائية | sqbitree | هيكل تخزين متسلسل الأشجار الثنائية | ||
| Bitree | بنية تخزين القائمة المرتبطة الثنائية للشجرة الثنائية | 6.1 ، 6.2 ، 6.3 ، 6.4 | ||
| Bitritree | بنية تخزين القائمة المرتبطة بثلاثة أرباع الشجرة الثنائية | |||
| Bithrtree | دليل شجرة ثنائية | 6.5 ، 6.6 ، 6.7 | ||
| Ptree | تمثيل تخزين الجدول الأصل للشجرة | |||
| Ctree | تمثيل تخزين القائمة المرتبطة بأطفال الشجرة (مع الوالدين) | |||
| cstree | تمثيل تخزين هيكل القائمة الثنائية المرتبطة بالشجرة | |||
| MFSET | يجتمع | 6.8 ، 6.9 ، 6.10 ، 6.11 | ||
| هوفمانتري | شجرة هوفمان | 6.12 ، 6.13 | المعروف أيضًا باسم "شجرة هافمان" | |
| PowerSet | مجموعة | 6.14/6.15 | ||
| nqueens | مشكلة الملكة | 6.16 | ||
| 07 صورة | mgraph | تخزين المصفوفة المجاورة للرسم البياني | 7.1 ، 7.2 ، 7.4 ، 7.5 ، 7.6 | الرسم البياني الموجه ، الشبكة الموجه ، الرسم البياني غير الموجود ، شبكة غير موجهة |
| Algraph | تخزين الجدول المجاور للرسم البياني | الرسم البياني الموجه ، الشبكة الموجه ، الرسم البياني غير الموجود ، شبكة غير موجهة | ||
| أولجراف | تخزين قائمة الوصلات المتقاطعة للمخطط | 7.3 | الرسم البياني الموجه ، الشبكة الموجه ، الرسم البياني غير الموجود ، شبكة غير موجهة | |
| amlgraph | تخزين الجدول المتعدد المجاور للرسوم البيانية | رسم بياني غير موجه ، شبكة غير موجهة | ||
| spanningtree | تمتد شجرة من الرسوم البيانية غير الموجهة | 7.7 ، 7.8 | السيد ديب ممتاز ليصبح شجرة | |
| StronglyConnectedComponents | مكونات توصيل قوية الرسم البياني الموجه | خوارزمية كوساراجو وخوارزمية تارجان | ||
| الحد الأدنى spanningtree | الحد الأدنى من شجرة الامتداد للشبكات غير الموجه | 7.9 | خوارزمية بريم وخوارزمية كروسكال | |
| نقاط المادة | عقد الرسم البياني غير الموجود | 7.10 ، 7.11 | ||
| topologysorting | فرز طوبولوجي من AOV-Network | 7.12 | الرسم البياني الموجه | |
| CriticePathmethod | المسار الرئيسي إلى AOE-Network | 7.13 ، 7.14 | الشبكة المستهدفة | |
| القصيرة | أقصر خوارزمية المسار | 7.15 ، 7.16 | خوارزمية ديجكسترا وخوارزمية فلويد | |
| 08 إدارة التخزين الديناميكية | boundarytagmethod | طريقة تحديد الحدود | 8.1 | |
| بودسى | نظام الشريك | 8.2 | ||
| GarbageCollection | جمع الوحدة عديمة الفائدة | 8.3 | الجدول المعمم عبر الترافب |