با استفاده از یک صف (queue) در پایتون، دستهای از آرایههای عددی numpy را به ترتیب دریافت و پردازش کنید و برای هر دسته میانگین عناصرش را محاسبه و چاپ کنید.
14.0 بازدید آخرین ویرایش در 201 روز قبل ساعت 04:00 0.0
راهحل را با استفاده از ماژولهای استاندارد queue یا collections.deque و کتابخانهی numpy پیادهسازی کنید: دادهها را به صورت بلوک (chunk) به صف اضافه کنید، سپس در حلقهای از صف عناصر را با popleft یا get بردارید و با numpy.mean میانگین هر بلوک را محاسبه کنید. نکات: برای عملکرد بهتر در محاسبات عددی از numpy استفاده کنید (عملیات برداری سریع)، برای محدود کردن حافظه از maxlen در deque یا اندازهی صف استفاده کنید و در صورت استفاده از چندریسمان یا پردازش موازی از queue.Queue (که ایمن برای رشتههاست) یا ماژول multiprocessing بهره ببرید؛ از حذف عناصر از ابتدای لیست خودداری کنید و به جای آن از deque استفاده کنید تا پیچیدگی زمانی مناسب حفظ شود.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
استفاده از یک deque با maxlen مشخص برای ذخیره دستههای عددی به محدود کردن مصرف حافظه کمک میکند و از گسترش بیرویه صف جلوگیری میکند. برای هر بلوک، با نگهداری دادهها به صورت آرایههای numpy میتوانید از numpy.mean بهصورت برداری استفاده کرده و میانگین سریع محاسبه کنید. از حذف عناصر از ابتدای لیست با استفاده از pop(0) پرهیز کنید و به جای آن از popleft استفاده کنید تا پیچیدگی زمانی O(1) حفظ شود. در محیطهای چندرشتهای از queue.Queue یا multiprocessing.Queue استفاده کنید تا ایمنی رشتهای و کارایی حفظ شود.
گزارش