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

पायथन प्रोग्राम: सरणी के तत्वों को लेफ्ट रोटेट करना


जब किसी सरणी के तत्वों को लेफ्ट रोटेट (बाएं घुमाने) करने की आवश्यकता होती है, तो सरणी पर पुनरावृत्ति की जा सकती है, और लेफ्ट रोटेशन की संख्या के आधार पर इंडेक्स को उतनी बार बढ़ाया जा सकता है।

उदाहरण

my_list = [11, 12, 23, 34, 65]
n = 3
print("सूची है: ")
for i in range(0, len(my_list)):
    print(my_list[i])

for i in range(0, n):
    first_elem = my_list[0]
    for j in range(0, len(my_list)-1):
        my_list[j] = my_list[j+1]
    my_list[len(my_list)-1] = first_elem

print()
print("लेफ्ट रोटेट करने के बाद सरणी: ")
for i in range(0, len(my_list)):
    print(my_list[i])

आउटपुट

सूची है: 11 12 23 34 65
लेफ्ट रोटेट करने के बाद सरणी: 34 65 11 12 23

व्याख्या

  • एक सूची परिभाषित की जाती है, और कंसोल पर प्रदर्शित की जाती है।

  • लेफ्ट रोटेशन के लिए मान परिभाषित किया जाता है (n=3)।

  • सूची पर पुनरावृत्ति की जाती है, और सूची में तत्वों के इंडेक्स को बढ़ाया जाता है, और उसी सूची के पिछले इंडेक्स को असाइन किया जाता है।

  • लूप से बाहर आने के बाद, पहला तत्व (0वें इंडेक्स पर) को अंतिम तत्व को असाइन किया जाता है।

  • यह आउटपुट कंसोल पर प्रदर्शित होता है।

अधिक कुशल दृष्टिकोण

उपरोक्त विधि O(n×k) समय लेती है जहां k रोटेशन की संख्या है। बेहतर तरीके:

  • स्लाइसिंग: my_list = my_list[n:] + my_list[:n] - O(n) समय
  • collections.deque: from collections import deque; d = deque(my_list); d.rotate(-n); my_list = list(d)
  • मॉड्यूलो ऑपरेटर: नई स्थिति की गणना के लिए (i + n) % len(my_list) का उपयोग करें

स्लाइसिंग विधि सबसे पायथनिक और पठनीय है। यह एक नई सूची बनाती है बजाय मूल सूची को संशोधित करने के।


  1. - पायथन में सूची से Kवां गायब नंबर खोजने का प्रोग्राम

    मान लीजिए हमारे पास nums नामक सॉर्टेड अद्वितीय संख्याओं की एक सूची और एक पूर्णांक k है। हमें दी गई सूची के पहले तत्व से kवां गायब नंबर ढूंढना है। उदाहरण के लिए, यदि इनपुट nums = [5,6,8,10,11], k = 1 है, तो आउटपुट 9 होगा, क्योंकि 9 दूसरा (इंडेक्स 1) गायब नंबर है। इसे हल करने के लिए हम निम्न चरणों का

  1. Python प्रोग्राम में ऐरे का योग खोजना Python प्रोग्राम में ऐरे का योग खोजना

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

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

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