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

C++ में रिवर्स पोलिश नोटेशन का मूल्यांकन करें

मान लीजिए हमारे पास एक त्रिभुज है। हमें ऊपर से नीचे तक का न्यूनतम पथ योग ज्ञात करना है। प्रत्येक चरण में हम नीचे की पंक्ति में आसन्न संख्याओं पर जा सकते हैं।

उदाहरण के लिए, यदि निम्न त्रिभुज इस प्रकार है

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

ऊपर से नीचे तक का न्यूनतम पथ योग 11 (2 + 3 + 5 + 1 =11) है।

आइए चरणों को देखें

  • गतिशील प्रोग्रामिंग दृष्टिकोण में उपयोग करने के लिए एक तालिका बनाएं।
  • n :=त्रिभुज का आकार
  • i के लिए :=n – 2 डाउन टू 0
    • जे के लिए:=0 से मैं
      • dp[j] :=त्रिभुज[i, j] + न्यूनतम dp[j] और dp[j + 1]
  • रिटर्न डीपी[0]

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

उदाहरण

class Solution {
   public:
   void printVector(vector <int>& v){
   for(int i = 0; i < v.size(); i++)cout << v[i] << " ";
   cout << endl;
}
int minimumTotal(vector<vector<int>>& triangle) {
   vector <int> dp(triangle.back());
   int n = triangle.size();
   for(int i = n - 2; i >= 0; i--){
      for(int j = 0; j <= i; j++){
         dp[j] = triangle[i][j] + min(dp[j], dp[j + 1]);
      }
      // printVector(dp);
   }
   return dp[0];
   }
};

इनपुट

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

आउटपुट

11

  1. C++ . में रेखा परावर्तन

    मान लीजिए कि हमारे पास 2D तल पर n बिंदु हैं, हमें यह जांचना है कि क्या y-अक्ष के समानांतर कोई रेखा है जो दिए गए बिंदुओं को सममित रूप से दर्शाती है, दूसरे शब्दों में, जांचें कि क्या कोई ऐसी रेखा मौजूद है जो दी गई रेखा पर सभी बिंदुओं को प्रतिबिंबित करने के बाद मूल बिंदुओं का सेट वही होता है जो प्रतिबि

  1. सी ++ में स्टैक का उपयोग करके एक लिंक सूची को उलट दें

    लिंक्ड लिस्ट मेमोरी को गतिशील रूप से आवंटित करती है, इसका उपयोग स्टैक को लागू करने के लिए किया जाता है। यह प्रोग्राम c++ प्रोग्रामिंग में लिंक सूची के उलटफेर को प्रदर्शित करता है। यहां, उम्मीदवार अपेक्षित परिणाम प्राप्त करने के लिए निम्नलिखित दृष्टिकोण अपना सकते हैं। एल्गोरिथ्म इस प्रकार है; एल्गोरि

  1. सी ++ में static_cast

    static_cast का उपयोग सामान्य/साधारण प्रकार के रूपांतरण के लिए किया जाता है। यह निहित प्रकार के जबरदस्ती के लिए जिम्मेदार कलाकार भी है और इसे स्पष्ट रूप से भी कहा जा सकता है। आपको इसका उपयोग फ्लोट को इंट, चार से इंट आदि में बदलने जैसे मामलों में करना चाहिए। यह संबंधित प्रकार की कक्षाओं को कास्ट कर सक