"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > पायथन में किसी संख्या के गुणनखंडों को कुशलतापूर्वक कैसे खोजें?

पायथन में किसी संख्या के गुणनखंडों को कुशलतापूर्वक कैसे खोजें?

2024-11-08 को प्रकाशित
ब्राउज़ करें:311

How to Find Factors of a Number Efficiently in Python?

पायथन में किसी संख्या के गुणनखंडों को कुशलता से खोजना

किसी संख्या के गुणनखंडों को निर्धारित करना विभिन्न डोमेन में एक सामान्य कार्य है, और पाइथॉन एकाधिक प्रदान करता है इसे पूरा करने के कुशल तरीके।

एक अनुकूलित दृष्टिकोण में पायथन के reduce का उपयोग करना शामिल है। सूची समझ के साथ कार्य करें। यह संक्षिप्त समाधान किसी दिए गए नंबर के सभी कारकों को प्रभावी ढंग से ढूंढता है।

from functools import reduce

def factors(n):
    return set(reduce(
        list.__add__,
        ([i, n//i] for i in range(1, int(n**0.5)   1) if n % i == 0)))

तर्क:

  • जनरेटर एक्सप्रेशन ([i, n//i] for i in रेंज(1, int(n**0.5) 1) यदि n % i == 0)) कारकों के जोड़े उत्पन्न करता है [कारक 1, कारक 2] जहां कारक 1 संख्या n के वर्गमूल से कम या उसके बराबर है। यह अनुकूलन गणना समय को कम कर देता है।
  • कम फ़ंक्शन जोड़े की सूचियों को एक सूची में जोड़ता है, जबकि सेट डेटा संरचना किसी भी डुप्लिकेट को हटा देती है जो पूर्ण वर्गों के मामले में हो सकती है।
  • किसी संख्या n के लिए, सूची समझ को केवल n के वर्गमूल तक लूप करने की आवश्यकता है क्योंकि संख्या को हमेशा एक कारक के रूप में 1 के साथ जोड़ा जा सकता है।
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3