x32x01
  • بواسطة x32x01 ||
يعنى ايه Array وليه تعتبر اكثر ال data structures شيوعا وليه تم اختراعها ؟!!
كوباية الشاى بتاعتك بقا وركز علشان هنفهم ال Array ومميزاتها وعيوبها وازاى بيتم تخزين البيانات بتاعتها فى ال Memory
- - خلينا كالعادة نضرب مثال نفهم منه ليه اخترعوا ال Array
= تخيل كدا انك معاك مجموعة بيانات من نفس النوع ( يعنى مثلا مجموعة اسماء اشخاص ) وانتا عايز تخزنهم مع بعض علشان تعرف تتعامل معاهم

- - اكيد مش هتخزن كل اسم لوحده فى ال memory , من هنا بقا جت فكرة ال Array
= هيا عبارة عن data structure تستخدم لتخزين مجموعة من البيانات ( بس بشرط انهم يكونوا من نفس النوع يعنى مثلا مجموعة ارقام او مجموعة نصوص )

-- طب العناصر اللى جوا ال Array ازاى بيتم تخزينها فى ال Memory ؟؟
- العناصر داخل ال Array لازم تتخزن جنب بعضها فى ال Memory ( يعنى لو عندك الف عنصر فلازم يتخزنوا جنب بعض مينفعش يبقا مجموعة عناصر فى مكان ومجموعة تانيه فى مكان تانى داخل ال Memory ) وركز فى المعلومة دى اوى
- لو مش عارف ازاى بيتم ترتيب العناصر المخزنة فى ال Memory

-- طبعا بما انها data structure فبيكون عندنا 4 عمليات اساسية بنعملها عليها :
1 - ( Searching ) : والعملية دى ال Time complexity بتاعتها بتختلف بناء على طريقة البحث اللى هنشتغل بيها ( كنت شرحت Binary search و Linear search فى مقالة منفصلة )
2 - Access : والعملية دى بتكون اننا عايز نحصل على عنصر معين وعارفين مكانه فين فى ال Array و ال Time complexity للعملية دى بتكون O( 1 )
- لأنها بتاخد وقت ثابت مهما اختلف عدد عناصر ال Array ( طالما عارفين مكان العنصر ده فى ال Array )
- ولان ال Array بردو بتدعم ال Random access وده اننا نقدر نحصل على اى عنصر فى ال Array من غير ما نحتاج نمشى على ال Array كلها لحد ما نوصل للعنصر الى احنا عايزينه

3 - ( Insertion ) : و ال Time complexity للعملية دى بتكون O( n ) بس ليه بقا ؟!!
- زى ما قلنا قبل كدا ان عناصر ال Array لازم تتخزن كلها جنب بعضها
- افرض بقا انك عندك 1000 عنصر مخزنين فى Array ومخزنين فى ال memory بس مفيش مكان فاضى جنبهم وانتا عايز تضيف عنصر جديد
- ال Memory هتنقل العناصر كلها لمكان جديد فاضى علشان تقدر تخزن ال 1001 عنصر جنب بعض
- فكدا يكون ال Time complexity بتاعتها O ( n ) لاننا لو عندنا 5000 عنصر فالوقت بتاعنا هيزيد

4 - Deletion : و ال Time complexity للعملية دى بتكون O( n ) لان ال Memory بتنقل العناصر كلها بردو لمكان جديد فيها بيكون مناسب لعدد عناصر ال Array بعد الحذف
- - وبكدا نستنتج ان مميزات ال Array هيا انها سريعة فى ال Access وال Searching
- - وعيوبها انها بطيئة نوعا ما فى ال Deletion وال Insertion
 
الوسوم : الوسوم
array data structures memory المصفوفة هياكل البيانات

الدخول أو التسجيل السريع

نسيت كلمة مرورك؟

آخر المشاركات

أحدث المنتجات

إحصائيات المنتدى

المواضيع
1,424
المشاركات
1,587
أعضاء أكتب كود
174
أخر عضو
omega-tron
عودة
أعلى