تهدف هذه المقالة إلى تحديد أسرع طريقة للحساب y = x^2 لـ bigints معبراً عنها كصفوف ديناميكية من dwords غير الموقعة. dwords:
حيث:
DWORD x[n 1] = { LSW, ......, MSW };
ابحث عن قيمة y = x^2 في أسرع وقت ممكن دون فقدان الدقة. (o (n^2) الضرب)
karatsuba الضرب
يمكن استخدام خوارزمية karatsuba لتسريع مضاعفة إلى o (n^log2 (3)). على الرغم من أنه يبدو واعداً ، فإن الطبيعة العودية للخوارزمية يمكن أن تقدم أهمية كبيرة للأداء للأرقام الكبيرة. تقسيم النهج والقهر. ومع ذلك ، فإن هذه الخوارزمية لها قيود عملية بسبب مشاكل الفائض والحاجة إلى الحساب المعياري على الأعداد الصحيحة غير الموقعة. بالنسبة للأرقام الكبيرة ، يوصى بخوارزمية الضرب karatsuba. يمكن استكشاف مزيد من التحسينات لتحسين الأداء ، مثل استخدام FFT (تحويل فورييه السريع) أو NTT (رقم التحويل النظري).
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3