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

पायथन में डुप्लिकेट नंबर खोजें

मान लीजिए कि हमारे पास n + 1 पूर्णांकों वाली एक सरणी संख्या है। सदस्य 1 से n की सीमा में हैं। साबित करें कि कम से कम एक डुप्लिकेट नंबर होना चाहिए। मान लें कि केवल एक डुप्लिकेट संख्या है, हमें उस डुप्लिकेट तत्व को ढूंढना है। तो अगर ऐरे [1,3,4,2,2] जैसा है, तो डुप्लीकेट एलिमेंट 2 होगा।

इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -

  • a :=nums[0] और b :=nums[0]
  • जबकि सच
    • a :=nums[nums[a]]
    • b :=nums[b]
    • अगर a =b, तो ब्रेक करें
  • ptr:=nums[0]
  • जबकि पीटीआर बी नहीं है
    • ptr:=nums[ptr]
    • b :=nums[b]
  • रिटर्न पीटीआर

आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -

उदाहरण

class Solution(object):
   def findDuplicate(self, nums):
      hare = nums[0]
      tortoise = nums[0]
      while True:
         hare = nums[nums[hare]]
         tortoise = nums[tortoise]
         if hare == tortoise:
            break
      ptr = nums[0]
      while ptr!=tortoise:
         ptr = nums[ptr]
         tortoise = nums[tortoise]
      return ptr
ob1 = Solution()
print(ob1.findDuplicate([3,1,3,4,2]))

इनपुट

[3,1,3,4,2]

आउटपुट

3

  1. सूची में सबसे छोटी संख्या खोजने के लिए पायथन प्रोग्राम

    इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे। समस्या कथन - हमें सभी सूची दी गई है, हमें सूची में उपलब्ध सबसे छोटी संख्या प्रदर्शित करने की आवश्यकता है यहां हम या तो सूची को क्रमबद्ध कर सकते हैं और सबसे छोटा तत्व प्राप्त कर सकते हैं या सबसे छोटा तत्व प्राप्त करने के लिए अंतर्न

  1. पायथन में संख्याओं की सूची में सबसे बड़ी संख्या कैसे खोजें?

    पायथन का बिल्ट-इन लाइब्रेरी फंक्शन मैक्स () किसी चलने योग्य या कॉमा से अलग की गई संख्याओं की सूची में सबसे बड़ी संख्या देता है। >>> max(10,23,43,21) 43 >>> l1=[4,7,2,9,1] >>> max(l1) 9

  1. मैं पायथन फ़ंक्शन के तर्कों की संख्या कैसे प्राप्त कर सकता हूं?

    मान लीजिए कि एक स्क्रिप्ट qux.py इस प्रकार है #qux.py def aMethod1(arg1, arg2):      pass def aMethod2(arg1,arg2, arg3, arg4, arg5):     pass यह मानते हुए कि आपके पास इस स्क्रिप्ट की सामग्री तक पहुंच नहीं है, आप दिए गए फ़ंक्शन में तर्कों की संख्या निम्नानुसार पा सकते हैं ए