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

सी ++ प्रोग्राम अधिकतम सबएरे योग ओ (एन ^ 2) समय (बेवकूफ विधि) खोजने के लिए

हम अधिकतम सबअरे योग O(n^2) समय (बेवकूफ विधि) खोजने के लिए एक C++ प्रोग्राम विकसित करेंगे।

एल्गोरिदम

Begin
   Take the array elements as input.
   Make a loop for the length of the sub-array from 1 to n, within this loop,
   Make another loop nested with the previous one, calculate the sum of first sub-array of that length.
   For remaining sub-array sum, add the next element to the sum and subtract the first element of that sub-array.
   Compare it with the global max and update if found out to be more.
   Print the max sub-array and their sum as a result.
End.

उदाहरण कोड

#include<iostream>
using namespace std;
int main() {
   int n, i, j, m=-1, s, ini_m, fi_m;
   cout<<"\nEnter the number of data element in the array: ";
   cin>>n;
   int a[n];
   for(i = 0; i < n; i++) {
      cout<<"Enter element "<<i+1<<": ";
      cin>>a[i];
   }
   for(i = 1; i < n+1; i++) {
      s = 0;
      for(j = 0; j < n; j++) {
         if(j < i)
            s += a[j];
         else
            s = s+a[j]-a[j-i];
         if(m< s) {
            ini_m = j-i+1;
            fi_m = j;
            m = s;
         }
      }
   }
   cout<<"\nThe maximum sub array is: ";
   for(i = ini_m; i <= fi_m; i++)
      cout<<a[i]<<" ";
      cout<<"\nThe maximum sub-array sum is: "<<m;
}

आउटपुट

Enter the number of data element in the array: 10
Enter element 1: 1
Enter element 2: -2
Enter element 3: 3
Enter element 4: -4
Enter element 5: 5
Enter element 6: -6
Enter element 7: 7
Enter element 8: 8
Enter element 9: -9
Enter element 10: 10
The maximum sub array is: 7 8 -9 10
The maximum sub-array sum is: 16

  1. सी ++ में सबसे गहरे नोड्स का योग खोजने का कार्यक्रम

    मान लीजिए हमारे पास एक बाइनरी ट्री है; हमें इसकी सबसे गहरी पत्तियों के मूल्यों का योग ज्ञात करना होगा। तो अगर पेड़ जैसा है - तब आउटपुट 11 होगा। इसे हल करने के लिए, हम इन चरणों का पालन करेंगे - मानचित्र m, और maxDepth . को परिभाषित करें एक पुनरावर्ती विधि हल करें () को परिभाषित करें, यह नोड

  1. सी++ प्रोग्राम सरणी को विभाजित करने की विधि द्वारा kth सबसे छोटा तत्व खोजने के लिए

    हम एरे को विभाजित करने की विधि द्वारा kth सबसे छोटा तत्व खोजने के लिए एक C++ प्रोग्राम विकसित करेंगे। एल्गोरिदम Begin    Function CreatePartition() has an array a, and the lower l and upper limit h as arguments    in := l and pi := h    for i in range l to h, do  

  1. पायथन में मी द्वारा सबएरे मॉड्यूलो का अधिकतम योग खोजने का कार्यक्रम

    पायथन में मी द्वारा सबएरे मॉड्यूलो का अधिकतम योग खोजने का कार्यक्रम मान लीजिए कि हमारे पास n तत्वों के साथ एक सरणी संख्या है। हमारे पास एक और पूर्णांक m है। हमें इसके किसी भी उप-सरणी मॉड्यूल एम के योग का अधिकतम मान ज्ञात करना है। इसलिए, यदि इनपुट nums =[1,5,7,3] m =5 जैसा है, तो आउटपुट 3 होगा क्यो