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

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

मान लीजिए कि हमारे पास संख्याओं की एक सूची है जिसे अंक कहा जाता है, हमें इसे बाएँ और दाएँ दोनों से तब तक निचोड़ना होगा जब तक कि एक शेष तत्व न हो। हम हर कदम पर राज्यों को वापस करेंगे।

तो, अगर इनपुट nums =[10,20,30,40,50,60] की तरह है, तो आउटपुट होगा

[ [10, 20, 30, 40, 50, 60],
   [30, 30, 40, 110],
   [60, 150],
   [210]
]

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

  • ret :=केवल एक एलिमेंट नंबर वाली सूची
  • अंकों का आकार> 1, करते समय
    • यदि अंकों का आकार 2 के समान है, तो
      • अंक:=तत्व के साथ एक सूची बनाएं (अंक [0] + अंक [1])
    • अन्यथा जब अंकों का आकार 3 के समान हो, तो
      • अंक:=तत्व के साथ एक सूची बनाएं (अंक [0] + अंक [1] + अंक [2])
    • अन्यथा,
      • अंक:=तत्वों के साथ एक सूची बनाएं (अंक [0] + अंक [1]) फिर अंक 2 से अंक के तीसरे अंतिम तत्व के लिए एक और सूची डालें, फिर तत्व के साथ एक और सूची जोड़ें (अंकों का दूसरा अंतिम तत्व + अंकों का अंतिम तत्व)
    • रिटर्न के अंत में अंक डालें
  • रिटर्न रिटर्न

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

उदाहरण

class Solution:
   def solve(self, nums):
      ret = [nums]
      while len(nums) > 1:
         if len(nums) == 2:
            nums = [nums[0] + nums[1]]
         elif len(nums) == 3:
            nums = [nums[0] + nums[1] + nums[2]]
         else:
            nums = [nums[0] + nums[1]] + nums[2:-2] + [nums[-2] + nums[-1]]
            ret.append(nums)
      return ret
ob = Solution() print(ob.solve([10,20,30,40,50,60]))

इनपुट

[10,20,30,40,50,60]

आउटपुट

[[10, 20, 30, 40, 50, 60], [30, 30, 40, 110], [60, 150], [210]]

  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. एक सूची में तत्वों को गिनने के लिए पायथन प्रोग्राम तब तक है जब तक कोई तत्व टुपल न हो?

    ए दी गई सूची है। इस सूची में नेस्टेड टुपल्स हैं। हमारा कार्य तत्वों को एक सूची में गिनना है जब तक कि कोई तत्व एक टपल न हो। यहां हम isinstance () फ़ंक्शन का उपयोग करते हैं। इस फ़ंक्शन में दो पैरामीटर ऑब्जेक्ट हैं और classinfo.object को चेक किया जाना है और क्लासइन्फो क्लास, टाइप या क्लास और टाइप का टप

  1. एक सूची से डुप्लिकेट तत्वों को हटाने के लिए पायथन कार्यक्रम?

    एक सूची डुप्लिकेट तत्व के साथ दी गई है, हमारा कार्य दूसरी सूची बनाना है जिसमें बिना डुप्लिकेट के तत्व शामिल हैं। उदाहरण A::[2,3,4,3,4,6,78,90] Output::[2,3,4,6,78,90] एल्गोरिदम Step 1: create a list. Step 2: create a new list which is empty. Step 3: traverse every element in list. Step 4: if elem