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

पायथन में क्रमबद्ध सरणी बनाने के लिए अधिकतम भाग खोजने का कार्यक्रम

मान लीजिए कि हमारे पास एक सरणी संख्या है, हमें सरणी को कुछ विभाजनों में विभाजित करना होगा, और उनमें से प्रत्येक को व्यक्तिगत रूप से क्रमबद्ध करना होगा। अब उन्हें संयोजित करने के बाद हमें एक क्रमबद्ध सरणी मिलेगी। हमें अधिकतम संख्या में विभाजन ज्ञात करने होंगे जो हम कर सकते थे?

इसलिए, यदि इनपुट [3,2,4,5,5] जैसा है, तो आउटपुट 4 होगा, क्योंकि हम [3,2], [4], [5], [5] जैसे विभाजन कर सकते हैं।

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

  • वास्तविक:=सूची संख्याओं को क्रमबद्ध करें

  • p1 :=0,p2 :=1, c :=0

  • निम्नलिखित को असीम रूप से करें, करें

    • झंडा:=सच

    • tmp:=अंकों की सबलिस्ट को सॉर्ट करें [इंडेक्स p1 से p2-1 तक]

    • j के लिए 0 से tmp के आकार की सीमा में, करें

      • अगर tmp[j] वास्तविक [p1+j] के समान नहीं है, तो

        • झंडा:=झूठा

        • p2 :=p2 + 1

        • लूप से बाहर आएं

      • अगर झंडा सही है, तो

        • p1 :=p2

        • p2:=p2+1

        • सी:=सी + 1

      • यदि p1 अंकों के आकार या p2> अंकों के आकार के समान है, तो

        • वापसी ग

उदाहरण

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

def solve(nums):
   real=sorted(nums)
   p1,p2,c=0,1,0
   while True:

      flag=True
      tmp=sorted(nums[p1:p2])
      for j in range(len(tmp)):
         if tmp[j]!=real[p1+j]:
            flag=False
            p2+=1
            break

      if flag:
         p1,p2=p2,p2+1
         c+=1
      if p1==len(nums) or p2>len(nums):
         return c

nums = [3,2,4,5,5]
print(solve(nums))

इनपुट

{3,2,4,5,5}

आउटपुट

4

  1. पायथन प्रोग्राम में सरणी का योग ज्ञात करें

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

  1. सरणी का योग खोजने के लिए पायथन कार्यक्रम

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

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

    इस लेख में, हम दिए गए समस्या कथन को हल करने के लिए समाधान और दृष्टिकोण के बारे में जानेंगे। समस्या कथन एक इनपुट के रूप में एक सरणी को देखते हुए, हमें सरणी में सबसे बड़ा तत्व खोजने की जरूरत है। दृष्टिकोण हम अधिकतम को पहले तत्व के रूप में प्रारंभ करते हैं। इसके बाद, हम दिए गए सरणी को दूसरे तत्व से अ