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

पायथन में स्टॉक II खरीदने और बेचने का सबसे अच्छा समय

मान लीजिए कि हमारे पास एक एरे ए है, यहां ए [i] दिन i पर दिए गए स्टॉक की कीमत का संकेत दे रहा है। हमें अधिकतम लाभ ज्ञात करना है। हम जितने चाहें उतने लेनदेन पूरे कर सकते हैं। (लेनदेन का मतलब स्टॉक खरीदना और बेचना है)। लेकिन हमें यह ध्यान रखना होगा कि हम एक ही समय में कई लेन-देन नहीं कर सकते हैं। इसलिए हमें नया स्टॉक खरीदने से पहले स्टॉक को बेचना होगा।

मान लीजिए कि एरे ए =[7, 1, 5, 3, 6, 4] की तरह है, तो परिणाम 7 होगा। जैसा कि हम देख सकते हैं, अगर हम दिन 2 (इंडेक्स 1) पर खरीदते हैं, तो यह 1 के रूप में लेगा एक खरीद मूल्य। फिर अगर हम 3 दिन बेचते हैं, तो लाभ 5 - 1 =4 होगा। फिर 4 दिन खरीदेंगे, और 5 दिन बेचेंगे, तो लाभ 6 - 3 =3 होगा

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

  • उत्तर दें =0
  • i के लिए 0 से n - 1 की सीमा में (n, A में तत्वों की संख्या है) -
    • यदि A[i] – A[i – 1]> 0, तो
      • उत्तर:=उत्तर + A[i] – A[i – 1]
  • वापसी का जवाब

उदाहरण

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

class Solution(object):
   def maxProfit(self, prices):
      """
      :type prices: List[int]
      :rtype: int
      """
      ans = 0
      for i in range(1,len(prices)):
         if prices[i] - prices[i-1] >0:
            ans+=(prices[i] - prices[i-1])
      return ans
ob1 = Solution()
print(ob1.maxProfit([7,2,5,8,6,3,1,4,5,4,7]))

इनपुट

print(ob1.maxProfit([7,2,5,8,6,3,1,4,5,4,7]))

आउटपुट

13

  1. पायथन में O(n) समय और O(1) स्थान में BST का माध्यिका ज्ञात कीजिए

    मान लीजिए कि हमारे पास बाइनरी सर्च ट्री (BST) है, तो हमें इसका माध्यिका ज्ञात करना होगा। हम नोड्स की सम संख्या के लिए जानते हैं, माध्यिका =((n/2th नोड + (n+1)/2th नोड) /2 विषम संख्या में नोड्स के लिए, माध्यिका =(n+1)/2th नोड। तो, अगर इनपुट पसंद है तो आउटपुट 7 . होगा इसे हल करने के लिए, हम इन चर

  1. पायथन में वैश्वीकरण

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

  1. 10 साइटें जैसे क्रेगलिस्ट 2022 में खरीदने और बेचने के लिए

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