Table of Contents
آرایه های پویا ساختارهای داده هستند که به طور خودکار برای جای دادن عناصر جدید اندازه گیری می کنند، آنها به طور گسترده ای در زبان های برنامه نویسی برای مدیریت مجموعه های داده ها به طور موثر استفاده می شوند. درک اینکه چگونه آنها را به طور موثر پیاده سازی کنید شامل متعادل کردن هزینه های جبران شده با عملکرد کلی است.
پایه های Dynamic Arrays
آرایه پویا با ظرفیت اولیه ثابت شروع می شود، زمانی که آرایه به حد خود می رسد، اندازه آن به اندازه بزرگتر، به طور معمول با دو برابر ظرفیت آن، این فرآیند بازسازی شامل تخصیص حافظه جدید و کپی کردن عناصر موجود است، که می تواند گران باشد اگر اغلب انجام شود.
استراتژی های اصلاح
انتخاب زمان و چگونگی تغییر عملکرد، استراتژی های مشترک شامل:
- [در این میان] ظرفیت های کاهش یافته ([[۱] [۱۰] [۱] [۱۰] [۱] [۱] [۱] افزایش اندازه به صورت نمایی، کاهش فرکانس تجدید نظر.
- [در این باره] [و] [از این رو] به [و] [و] [به] [و] [به] [و]] [و [به]]] [و]] [به [و]]] [و]]] [به [و]] [و]] [به [و]]] [و]] [به [و] [و] [به [و] [و [و]]]] [و [به [و] [و [و [و] [به] [و]] [به [و] [به] [و]]]] [به [و] [و]]]]]]]] [و] [و] [و [و [به [و [و [به [و] [و] [و]]]] [و] [و]]]]]] [و]] [به [و [به [به [به [به]]]] [و] [به]]] [به [به [به [و] [و] [و [و] [به [به [به]] [به [به [به]]] [به [به [
- روش های فشرده: [FLT 1] عناصر هر دو استراتژی را برای موارد خاص استفاده ترکیب کنید.
تعادل هزینه ها و عملکرد
برای بهینه سازی عملکرد، لازم است که تعداد اندازه ها را به حداقل برسانید. ظرفیت دو برابر کردن اغلب ترجیح داده می شود زیرا هزینه را بر روی بسیاری از ورودی ها حفظ می کند.اما گام های بزرگتر می تواند منجر به افزایش استفاده از حافظه شود. توسعه دهندگان باید نیازهای خاص برنامه را برای انتخاب بهترین روش در نظر بگیرند.
راهنمایی های پیاده سازی
هنگام پیاده سازی یک آرایه پویا، موارد زیر را در نظر بگیرید:
- با یک ظرفیت اولیه که با اندازه داده های مورد انتظار مطابقت دارد شروع کنید.
- با دو برابر شدن برای کاهش فرکانس عملیات پر هزینه
- عناصر کپی را به طور موثر در هنگام بازسازی برای جلوگیری از تنگناهای عملکردی کپی کنید.
- نظارت بر استفاده از حافظه برای جلوگیری از تخصیص بیش از حد