یک تابع در پایتون بنویسید که دو آرایهی عددی را گرفته و حاصلضرب داخلی (dot product) آنها را برگرداند.
4.0 بازدید آخرین ویرایش در 201 روز قبل ساعت 03:25 0.0
برای حل این مسئله میتوانید ورودی را بهصورت لیستهای پایتون یا آرایههای numpy بگیرید؛ ابتدا طول دو آرایه را بررسی کنید و در صورت اختلاف طول، خطا بازگردانید. برای پیادهسازی ساده از zip و یک جمعگیر (sum(a*b for a,b in zip(...))) یا لیستکامپرهنشن استفاده کنید و برای عملکرد بالا و دادههای بزرگ از numpy.array و np.dot بهره ببرید (تبدیل نوع به float64 و اجتناب از حلقههای پایتونی برای بهرهوری بهتر). نکات: اعتبارسنجی طول، تبدیل درست نوع دادهها و استفاده از عملیات برداری برای مقیاسپذیری در محاسبات علمی/HPC مفید است.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای پیادهسازی ساده، ابتدا طول دو آرایه را چک کنید و در صورت تفاوت، خطا بدهید. میتوانید از zip و جمع ضربها استفاده کنید: sum(a*b for a, b in zip(a1, a2)) که با لیستهای پایتون کار میکند. برای دادههای بزرگ و کارایی بالا، از numpy با np.dot یا np.vdot استفاده کنید و دادهها را به float64 تبدیل کنید تا صحت و کارایی بهتری داشته باشید. توجه کنید که zip تا کوتاهترین طول دو آرایه را در نظر میگیرد، پس بررسی طول ضروری است.
گزارش