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

जांचें कि क्या सरणी को पायथन में घुमाने के बाद सॉर्ट करना संभव है

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

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

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

  • n :=अंकों का आकार
  • यदि अंकों को क्रमबद्ध किया जाता है, तो
    • सही लौटें
  • अन्यथा,
    • स्थिति:=सत्य
    • मैं के लिए 0 से n - 2 की सीमा में, करते हैं
      • यदि अंक [i]> अंक [i + 1], तो
        • लूप से बाहर आएं
    • i :=i + 1
    • k के लिए i से n - 2 की श्रेणी में, करें
      • यदि अंक [के]> अंक [के + 1], तो
        • स्थिति:=गलत
        • लूप से बाहर आएं
    • यदि स्थिति गलत है, तो
      • झूठी वापसी
    • अन्यथा,
      • यदि अंक [n - 1] <=अंक[0], तो
        • सही लौटें
      • झूठी वापसी

उदाहरण

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

def solve(nums):
   n = len(nums)
   if all(nums[i] <= nums[i + 1] for i in range(len(nums) - 1)):
      return True
   else :
      status = True
      for i in range(n - 1) :
         if nums[i] > nums[i + 1] :
            break
      i += 1
      for k in range(i, n - 1) :
         if nums[k] > nums[k + 1]:
            status = False
            break
      if not status:
         return False
      else :
         if nums[n - 1] <= nums[0]:
            return True
         return False
nums = [4,5,6,1,2,3]
print(solve(nums))

इनपुट

[4,5,6,1,2,3]

आउटपुट

True

  1. एक सरणी के तत्वों को आरोही क्रम में क्रमबद्ध करने के लिए पायथन प्रोग्राम

    जब किसी सरणी के तत्वों को आरोही क्रम में क्रमबद्ध करने की आवश्यकता होती है, तो सॉर्ट विधि का उपयोग किया जा सकता है। यह तत्वों को डिफ़ॉल्ट रूप से आरोही क्रम में क्रमबद्ध करने में मदद करता है। यदि हम चाहते हैं कि इसे अवरोही क्रम में क्रमबद्ध किया जाए, तो रिवर्स नामक एक पैरामीटर को सही पर सेट किया जा स

  1. जांचें कि क्या पायथन में अनुमत आसन्न की सशर्त अदला-बदली के साथ एक सरणी को सॉर्ट करना संभव है

    मान लीजिए कि हमारे पास संख्याओं की एक अनियंत्रित सरणी है जिसे अंक कहा जाता है और सभी तत्व 0 से n-1 की सीमा में हैं। हम जितनी बार आवश्यक हो, आसन्न तत्वों को अंकों में स्वैप कर सकते हैं, लेकिन केवल तभी जब इन तत्वों के बीच पूर्ण अंतर 1 हो। हमें यह जांचना होगा कि हम अंकों को क्रमबद्ध कर सकते हैं या नहीं

  1. जांचें कि क्या वेक्टर ए को घुमाकर और वेक्टर सी को पायथन में जोड़कर वेक्टर बी तक पहुंचना संभव है

    मान लीजिए हमारे पास 2D तल में तीन सदिश x, y और z हैं। हमें यह जांचना होगा कि क्या हम वेक्टर y को सदिश x से 90 डिग्री (घड़ी की दिशा में) घुमाकर प्राप्त कर सकते हैं या इसमें आवश्यकतानुसार जितनी बार z जोड़ सकते हैं। इसलिए, यदि इनपुट x =(-4, -2) y =(-1, 2) z =(-2, -1) जैसा है, तो आउटपुट सही होगा क्योंक