صفيف مقابل القاموس


الاجابه 1:

هم هياكل بيانات مختلفة. كلاهما ديناميكي في الطبيعة ، ينمو حسب الحاجة.

القائمة مثل مجموعة من القيم المتسلسلة مع بعض الترتيب. على سبيل المثال. ل = [1،2،3،4،5] مفيد لتخزين واسترجاع العناصر بهذا الترتيب أو بواسطة الفهرس. مثل l [1] = 6 ، l [3] +1 وما إلى ذلك ، يمكنك التكرار خلال القائمة حسب تسلسل الفهارس.

القاموس هو في الأساس جدول تجزئة حيث تكون عناصره زوج. يمكن أن تكون المفاتيح عددًا صحيحًا أو سلسلة أو حرفًا. على سبيل المثال. D = {'a': 2، 'c': 5} من المفيد بشكل خاص استرداد القيم بناءً على مفاتيحها ، عندما لا يكون هناك ترتيب معين في القيم. Like D ['a'] = 9. هذا النوع من الفهرسة غير ممكن في القائمة. إنه مفيد للاسترجاع السريع أو التحقق مما إذا كان المفتاح موجودًا أم لا ، أو ما هو القيمة المقابلة. ستشمل نفس العملية في القائمة بحثًا خطيًا للقائمة الكاملة في أسوأ الحالات ، مما يجعل القائمة غير فعالة لهذا النوع من العمليات.


الاجابه 2:

وهي هياكل بيانات مختلفة للغاية. القواميس هي في الأساس جداول تجزئة ، تستخدمها لتخزين أزواج من قيمة المفتاح> ، مع الوصول السريع إلى القيمة مع معرفة المفتاح. يمكنك التفكير في القاموس على أنه قائمة بالصفوف (المفتاح ، القيمة) مع وظيفة سريعة يمكن أن تمنحك فهرس عنصر بالنظر إلى أن القوائم الرئيسية هي ، في حين ، القوائم ، توفر الوصول حسب الفهرس ، وهو أكثر بكثير محدود ثم مفتاح ، يمكنك محاكاة قائمة على القاموس باستخدام 0،1،2 ... كمفاتيح.

يمكنك استخدام القوائم عندما تكون كافية ، حيث تتطلب القواميس مساحة أكبر بكثير للتخزين وستكون أقل لطفًا للتكرار عليها.


الاجابه 3:

لست متأكدًا حقًا في سياق Python ، ولكن بشكل عام القائمة عبارة عن ADT مرتبة بالتسلسل ويتم البحث عنها بشكل متسلسل (نوع البيانات المجردة) والقاموس عبارة عن جدول تجزئة بسيط ، يتم ترتيبه رياضيًا والبحث عنه رياضيًا.

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

القاموس عبارة عن ADT رياضي ، بمعنى أنه يتم تخزين البيانات والبحث عنها بواسطة دالة رياضية لقيمة البيانات. تستغرق عملية البحث نفس الوقت الذي تستغرقه لإضافة البيانات. لا ينطبق مفهوم الفرز على شيء مثل القاموس. ومع ذلك ، فإنه يستخدم بشكل عام كمية لا تذكر من الذاكرة الإضافية.


الاجابه 4:

بعبارات بسيطة ، تعد القوائم هي أبسط طريقة لتخزين البيانات - يمكنك تفريغها كلها باستخدام lst.append () ، كل قيمة لها فهرس يمكن استرجاعها (var = lst [i]) ، وإعادة تعيينها (lst [ i] = 42) أو محذوف من القائمة (lst.pop (i)). من الواضح أنه يمكنك التكرار خلال القائمة لإجراء عمليات مختلفة - البحث والفرز والتحليل وما إلى ذلك.

الآن ، القواميس (إذا تم تنفيذها بشكل مثالي) هي قوائم عمليًا حيث لا تكون البادئات بالضرورة أرقامًا ولكن يمكن أن تكون من أي نوع بيانات قابل للحمل مثل السلسلة. لذا ، تمامًا كما يمكنك أن تقول lst [5] = 5 ، في الإملاء يمكنك dct ['mother'] = 'Isabella' وهو مفيد للغاية عندما لا تكون الأرقام جيدة بما يكفي من القيم الرئيسية.

يتم استخدام فكرة أزواج القيمة الرئيسية أيضًا في ملفات .json التي يمكن تحويلها بسهولة إلى إملاء Python باستخدام وحدة json القياسية من Python.