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

पायथन में रैखिक समय में आकार 3 के क्रमबद्ध क्रम का पता लगाएं

मान लीजिए कि हमारे पास एन संख्याओं के साथ एक सरणी है, हमें यह जांचना है कि क्या 3 तत्व जैसे कि b[i]

इसलिए, यदि इनपुट [13, 12, 11, 6, 7, 3, 31] जैसा है, तो आउटपुट [6,7,31]

होगा।

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

  • n :=A का आकार
  • अधिकतम:=n-1, न्यूनतम:=0
  • छोटा :=आकार 1000 की एक सरणी, और 0 से भरें
  • छोटा[0] :=-1
  • 1 से n की श्रेणी में i के लिए, करें
    • अगर ए[i] <=ए[न्यूनतम], तो
      • न्यूनतम:=मैं
      • छोटा[i] :=-1
    • अन्यथा,
      • छोटा[i] :=न्यूनतम
  • अधिक :=आकार 1000 की एक सरणी, और 0 से भरें
  • अधिक [n-1] :=-1
  • n-2 से -1 की श्रेणी में i के लिए, 1 से घटाएं
    • अगर ए[i]>=ए[अधिकतम], तो
      • अधिकतम:=मैं
      • अधिक [i] :=-1
    • अन्यथा,
      • अधिक से अधिक[i] :=अधिकतम
  • मैं के लिए 0 से n की सीमा में, करते हैं
    • यदि छोटा [i] -1 के समान नहीं है और बड़ा [i] -1 के समान नहीं है, तो
      • रिटर्न ए[छोटा[i]], ए[i], ए[बड़ा[i]]
  • वापस "कुछ नहीं"

उदाहरण

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

def find_inc_seq(A):
   n = len(A)
   maximum = n-1
   minimum = 0
   smaller = [0]*10000
   smaller[0] = -1
   for i in range(1, n):
      if (A[i] <= A[minimum]):
         minimum = i
         smaller[i] = -1
      else:
         smaller[i] = minimum
   greater = [0]*10000
   greater[n-1] = -1
   for i in range(n-2, -1, -1):
      if (A[i] >= A[maximum]):
         maximum = i
         greater[i] = -1
      else:
         greater[i] = maximum
   for i in range(0, n):
      if smaller[i] != -1 and greater[i] != -1:
         return A[smaller[i]], A[i], A[greater[i]]
   return "Nothing"
arr = [13, 12, 11, 6, 7, 3, 31]
print(find_inc_seq(arr) )

इनपुट

[13, 12, 11, 6, 7, 3, 31]

आउटपुट

(6, 7, 31)

  1. पायथन में सबसे लंबे समय तक बढ़ने वाला क्रम

    मान लीजिए कि हमारे पास पूर्णांकों की एक क्रमबद्ध सूची नहीं है। हमें सबसे लंबे समय तक बढ़ते क्रम को खोजना होगा। तो अगर इनपुट [10,9,2,5,3,7,101,18] है, तो आउटपुट 4 होगा, क्योंकि बढ़ते क्रम [2,3,7,101] इसे हल करने के लिए, हम इन चरणों का पालन करेंगे - ट्रेल :=लंबाई 0 से लेकर अंकों की लंबाई -1 तक की एक

  1. पायथन में एक सूची का आकार खोजें

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

  1. पायथन का उपयोग करके समय अंतर कैसे खोजें?

    पायथन में टाइम डेल्टा ऑब्जेक्ट्स का उपयोग करके डेट और टाइम मैथ्स करना बहुत आसान है। जब भी आप किसी दिनांक/समय में जोड़ना या घटाना चाहते हैं, तो DateTime.datetime() का उपयोग करें, फिर दिनांक समय जोड़ें या घटाएं। समय डेल्टा() उदाहरण। एक समय डेल्टा वस्तु एक अवधि का प्रतिनिधित्व करती है, दो तिथियों या सम