Data structure 👨💻
Відкрити в Telegram
قناة غنية بروابط الشروحات والشيتات واسئلة سابقة لاساتذة الكلية وملخصات وفقكم الله جميعا. أتركو لنا دعوة بقدر استفادتكم ولكم خير الجزاء شوفو التثبيتات 🧷
Показати більше641
Підписники
Немає даних24 години
+67 днів
+330 днів
Архів дописів
Repost from لَيطمِئن قــلَبّــكَ
﴿ إِنَّ اللَّهَ وَمَلَائِكَتَهُ يُصَلُّونَ عَلَى النَّبِيِّ ۚ يَا أَيُّهَا الَّذِينَ آمَنُوا صَلُّوا عَلَيْهِ وَسَلِّمُوا تَسْلِيمًا ﴾
"ولا تجعل عظيم خوفي يُنسيني أن الأمر كُلّه بيدك وحدك؛ ولن يضرني شيء أردت به سبحانك نفعي."
linked list
في القائمة المتصلة الفردية مؤشر اخر عقدة يساوي ال(null)
في القائمة المتصلة الدائرية مؤشر اخر عقدة يؤشر على
ال(head او اول عقدة)
في القائمة المتصلة (الزوجية) عندما يكون المؤشر p يشير الي اخر عقدة يمكنك الوصول الي العقد التي قبلها
عندما يساوي الhead ال null هذا يشير الي انا القائمة (فارغة)
عندما نريد تحريك المؤشر p خطوة واحدة (p=p.next) وعندما نريد تحريكه خطوتين (p=p.next.next)
عندما يشير الlocation الي الnull هذا مؤشر على ان العنصر(غير موجود)
عندم يكون الستاك ممتلىء و نقوم بعملية push يحدث
(overflow)
في الستاك الثابت يحتوي على 10 قيم، فان قيمةالtop تساوي (9)
عندما يشير الtop الي 1- هذا يشير الي ان الستاك (فارغ)
مؤشر الtop دائماً يشير الي (اخر قيمة مضافة)
تحدث عملية underflow عندما يكون الستاك (فارغ) و العملية (pop)
عندما نريد جلب اخر قيمة في الستاك دون حذفها نستخدم
(peek)
عندما يكون الستاك متحرك لا تحدث عملية (overflow)
في الستاك عندما لايساوي التوب 1- هذا يدل على انا الستاك (ليس فارغ)
يحدث (overflow) عندما يكون الستاك ممتلئ و العملية (push) و يحدث (underflow) عندما يكون الستاك فارغ و العملية (pop)
دائماً يشير ال(pop)&(peek) الي الtop
الـ Array عادةً يحتاج إلى ذاكرة أكبر من الـ Stack، خاصة إذا كان يحتوي على عدد كبير من العناصر.
الـ LinkedList يحتاج إلى ذاكرة أكبر من الـ Array بسبب وجود مؤشرات إضافية في كل عقدة.
الـ LinkedList يحتاج إلى ذاكرة أكبر من الـ Stack بسبب وجود مؤشرات إضافية في كل عقدة. الـ Stack يستخدم ذاكرة أقل لأنه يخزن العناصر بشكل متتابع دون مؤشرات.
Stack
المميزات:
1. تنفيذ سريع للعمليات (Push, Pop).
2. بسيط في التنفيذ واستخدام الذاكرة.
3. يستخدم في حل المشكلات مثل المعالجة العودية وتنفيذ العمليات الحسابية.
العيوب:
1. لا يمكن الوصول إلى العناصر الداخلية سوى من خلال العنصر الأخير (LIFO).
2. محدودية الحجم في بعض الحالات إذا كانت الذاكرة غير كافية.
3. الحد من الاستخدام في بعض الحالات التي تتطلب الوصول العشوائي للعناصر.
linkedlist
المميزات :
1. إضافة وحذف العناصر بكفاءة.
2. مرونة في الحجم.
3. لا يحتاج إلى ذاكرة متجاورة.
العيوب :
1. استهلاك زائد للذاكرة.
2. بطء في الوصول للعناصر.
3. التنقل المعقد عبر العقد.
