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

पायथन में सरणी घुमाएं


मान लीजिए हमारे पास एक सरणी A है। हमें इसे k चरणों से दाईं ओर घुमाना है। यदि सरणी A = [5, 7, 3, 6, 8, 1, 5, 4] है, और k = 3, तो आउटपुट [1,5,4,5,7,3,6,8] होगा। चरण इस तरह हैं:

  • [4,5,7,3,6,8,1,5]
  • [5,4,5,7,3,6,8,1]
  • [1,5,4,5,7,3,6,8]

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

  • मान लें n सरणी का आकार है
  • k = k mod n
  • A = n - k से अंत तक का उपसरणी + 0 से n - k - 1 तक का उपसरणी

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

उदाहरण

class Solution(object):
    def rotate(self, nums, k):
        """
        :type nums: List[int]
        :type k: int
        :rtype: None Do not return anything, modify nums in-place instead.
        """
        n = len(nums)
        k%=n
        nums[:] = nums[n-k:]+nums[:n-k]

nums = [5,7,3,6,8,1,5,4]
ob1 = Solution()
ob1.rotate(nums, 3)
print(nums)

इनपुट

nums = [5,7,3,6,8,1,5,4] k = 3

आउटपुट

[1,5,4,5,7,3,6,8]

  1. - पायथन में क्रमबद्ध सरणी मर्ज करें

    मान लीजिए हमारे पास दो क्रमबद्ध सरणी A और B हैं। हमें उन्हें मर्ज करना है और केवल एक क्रमबद्ध सरणी C बनाना है। सूचियों का आकार भिन्न हो सकता है। उदाहरण के लिए, मान लीजिए A = [1,2,4,7] और B = [1,3,4,5,6,8], तो मर्ज की गई सूची C [1,1,2,3,4,4,5,6,7,8] होगी। हल करने के चरण i := 0, j := 0 और end := A क

  1. - पायथन में स्ट्रिंग स्लाइसिंग से स्ट्रिंग रोटेट करना

    एक स्ट्रिंग दी गई है, हमारा कार्य स्ट्रिंग को दो तरह से स्लाइस करना है। एक क्लॉकवाइज और दूसरा एंटीक्लॉकवाइज।1. लेफ्ट (या एंटीक्लॉकवाइज) दी गई स्ट्रिंग को d एलिमेंट्स द्वारा रोटेट करें (जहां d <= n)।2. राइट (या क्लॉकवाइज) दी गई स्ट्रिंग को d एलिमेंट्स द्वारा रोटेट करें (जहां d <= n)।उदाहरणInput: stri

  1. - सरणी को एक से चक्रीय रूप से घुमाने का पायथन प्रोग्राम

    समस्या विवरण एक यूजर इनपुट सरणी दी गई है। हमारा कार्य चक्रीय रूप से घुमाना है यानी घड़ी की दिशा में मानों को घुमाएं। उदाहरण इनपुट: A=[1,2,3,4,5] आउटपुट=[5,1,2,3,4] एल्गोरिदम सरणी तत्व इनपुट करें। अंतिम तत्व को एक वेरिएबल में संग्रहीत करें जैसे x। सभी तत्वों को एक स्थान आगे शिफ्ट करें। सरणी के पह