مكتبات تجزئة لمبرمجي سي

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

تم تطويره بواسطة Troy D. هانسون ، يمكن تخزين أي هيكل C في جدول تجزئة باستخدام uthash. ما عليك سوى تضمين # تضمين "uthash.h" ثم إضافة UT_hash_handle إلى الهيكل واختيار حقل واحد أو أكثر في البنية لتكون بمثابة المفتاح. ثم استخدم HASH_ADD_INT و HASH_FIND_INT ووحدات الماكرو لتخزين العناصر أو استردادها أو حذفها من جدول التجزئة. ويستخدم مفاتيح int وسلسلة وثنائية.

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

instagram viewer

SGLIB اختصار لـ Simple Generic Library ويتكون من ملف رأس واحد sglib.h يوفر تطبيقًا عامًا لمعظم الخوارزميات الشائعة للمصفوفات والقوائم والقوائم المصنفة والأشجار ذات اللون الأسود الأحمر. المكتبة عامة ولا تحدد هياكل البيانات الخاصة بها. بل تعمل على هياكل البيانات الحالية المعرفة بواسطة المستخدم من خلال واجهة عامة. كما أنه لا يقوم بتخصيص أو إلغاء تخصيص أي ذاكرة ولا يعتمد على أي إدارة ذاكرة معينة.

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

instagram story viewer