هادی شجاعیان
1 سال پیش توسط هادی شجاعیان مطرح شد
1 پاسخ

تفاوت آرایه و لیست در سی شارپ

تفاوت ساختمان داده آرایه با لیست در سی شارپ چیست؟


ثبت پرسش جدید
هادی شجاعیان
تخصص : مهندس نرم افزار، توسعه کسب و ک...
@hadi.sh.pro 1 سال پیش آپدیت شد
0

آرایه به عنوان یک ساختمان داده خطی به حساب می آید.
آرایه ها به صورت کنار هم در حافظه قرار می گیرند، دسترسی از طریق اندیس صورت می گیرد. در آرایه عملیات جستجو به دو صورت ترتیبی و دودویی اتفاق می افتد. اگر خطی باشد O(n) و اگر دودویی باشد O(lg n) می باشد. البته در جستجویی دودویی آرایه حتما باید مرتب باشد و می دانیم مرتب سازی خودش می تواند شامل هزینه باشد. عمل حذف و اضافه کردن در آرایه از طریق شیفت انجام می شود.
لیست ها از طریق اشاره گر( پوینتر ) به یکدیگر وصل می شوند، بنابراین لزوما در حافظه کنار هم نیستند، جستجوی دودویی در لیست پیوندی وجود ندارد.
به صورت خلاصه تفاوت آرایه و لیست را می تواند اینگونه لیست کرد

  1. دسترسی به عناصر آرایه نسبت به لیست سریعتر است چون اندیس هر عنصر مشخص است.
    2.درج و حذف در لیست پیوندی نسبت به آرایه ساده تر و سریعتر است، چون نیاز به شیفت و جابجایی فیزیکی نداریم.
    3.امکان جستجوی دودویی در لیست پیوندی وجود ندارد.

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام