Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

पायथन - दिए गए नंबरों की सूची से सबसे बड़ी संख्या संभव है

इस लेख में, हम यह जानने जा रहे हैं कि दी गई संख्याओं की सूची से संभव सबसे बड़ी संख्या कैसे ज्ञात की जाए। हम समस्या को हल करने के लिए दो अलग-अलग तरीके देखेंगे। समस्या को हल करने के लिए नीचे दिए गए चरणों का पालन करें।

  • क्रमपरिवर्तन विधि के लिए itertools मॉड्यूल आयात करें।
  • संख्याओं और एक खाली सूची के साथ सूची प्रारंभ करें।
  • सूची के क्रमपरिवर्तन पर पुनरावृति करें।
    • सभी संयोजनों में शामिल हों और परिणाम को खाली सूची में जोड़ें।
  • इंट के रूप में अधिकतम विधि और कुंजी के साथ परिणाम से अधिकतम संख्या पाएं।
  • स्ट्रिंग को पूर्णांक में बदलें और इसे प्रिंट करें।

उदाहरण

आइए कोड देखें।

# importing the module
import itertools

# initializing the list
numbers = [45, 35, 138, 43, 67]

# result
result = []

# permutations
for permutation in itertools.permutations(str(number) for number in numbers):
   result.append(''.join(permutation))

# finding max
maximum = max(result, key=int)

# printing the max
print(int(maximum))

यदि आप उपरोक्त कोड चलाते हैं, तो आपको निम्न परिणाम प्राप्त होंगे।

आउटपुट

67454335138

आइए समस्या को हल करने का एक और तरीका देखें। हम समस्या को हल करने के लिए फ़ंक्शन को सॉर्ट करेंगे। कोड लिखने के लिए नीचे दिए गए चरणों का पालन करें।

  • सूची को सॉर्ट किए गए फ़ंक्शन में पास करें।
  • गेट_की नामक एक फ़ंक्शन लिखें जो दो तर्कों को स्वीकार करता है।
  • वापसी -1 अगर str(first) + str(second)> str(second) + str(first) else 1.
  • शामिल विधि का उपयोग करके तत्वों की सूची में शामिल होना।
  • एक पूर्णांक में परिवर्तित करके परिणाम प्रिंट करें।

चूंकि हम किसी फ़ंक्शन को कुंजी के रूप में उपयोग कर रहे हैं, इसलिए हमें functools से cmp_to_key विधि का उपयोग करके इसे कुंजी में बदलना होगा। आइए कोड देखें।

उदाहरण

from functools import cmp_to_key

# initializing the list
numbers = [45, 35, 138, 43, 67]

def get_key(first, second):
   if str(first) + str(second) > str(second) + str(first):
      return -1
   return 1

# getting the result
result = sorted(numbers, key=cmp_to_key(get_key))

# joining the result
result = "".join(str(integer) for integer in result)

# printing the result
print(int(result))

यदि आप उपरोक्त कोड चलाते हैं, तो आपको निम्न परिणाम प्राप्त होंगे।

आउटपुट

67454335138

निष्कर्ष

यदि ट्यूटोरियल में आपके कोई प्रश्न हैं, तो उनका टिप्पणी अनुभाग में उल्लेख करें।


  1. पायथन में यादृच्छिक संख्या सूची बनाना

    विभिन्न श्रेणी के मूल्यों के लिए किसी कार्यक्रम के मॉडल या व्यवहार का अध्ययन करते समय यादृच्छिक संख्याएँ उत्पन्न करने की आवश्यकता होती है। पायथन यादृच्छिक मॉड्यूल का उपयोग करके ऐसी यादृच्छिक संख्याएँ उत्पन्न कर सकता है। नीचे दिए गए उदाहरणों में हम पहले देखेंगे कि कैसे एक यादृच्छिक संख्या उत्पन्न की

  1. सूची से एन सबसे बड़े तत्वों को खोजने के लिए पायथन कार्यक्रम

    एक पूर्णांक सूची को देखते हुए, हमारा कार्य सूची में N सबसे बड़े तत्वों को खोजना है। उदाहरण Input : [40, 5, 10, 20, 9] N = 2 Output: [40, 20] एल्गोरिदम Step1: Input an integer list and the number of largest number. Step2: First traverse the list up to N times. Step3: Each traverse find the largest va

  1. किसी दी गई सीमा के भीतर यादृच्छिक संख्या उत्पन्न करने और सूची में स्टोर करने के लिए पायथन प्रोग्राम?

    यहां 3 उपयोगकर्ता इनपुट चर का उपयोग किया जाता है, एक प्रारंभिक संख्या के लिए, दूसरा अंतिम संख्या है और अंतिम कितने यादृच्छिक संख्या प्रदर्शित करना चाहते हैं। पायथन यादृच्छिक संख्या उत्पन्न करने के लिए एक यादृच्छिक मॉड्यूल प्रदान करता है। यहां हम रेडिएंट फ़ंक्शन के साथ रैंडम फ़ंक्शन का उपयोग करते हैं