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

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


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

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

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

  • real := nums सूची को क्रमबद्ध करें।

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

  • निम्न को अनंत रूप से दोहराएं:

    • flag := True

    • tmp := nums[p1 से p2-1 तक उपसूची को क्रमबद्ध करें।

    • j को 0 से tmp के आकार तक लूप करें:

      • यदि tmp[j], real[p1+j] के समान नहीं है, तो flag := False, p2 := p2 + 1, लूप से बाहर निकलें।

    • यदि flag सत्य है, तो p1 := p2, p2 := p2+1, c := c + 1

    • यदि p1, nums के आकार के बराबर है या p2 > nums का आकार, तो c लौटाएं।

उदाहरण

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

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. Python प्रोग्राम में ऐरे का योग खोजना Python प्रोग्राम में ऐरे का योग खोजना

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

  1. पायथन प्रोग्राम: ऐरे का योग ढूंढें पायथन प्रोग्राम: ऐरे का योग ढूंढें

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

  1. पायथन प्रोग्राम: ऐरे में सबसे बड़ा एलिमेंट ढूंढें पायथन प्रोग्राम: ऐरे में सबसे बड़ा एलिमेंट ढूंढें

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