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

पायथन में तीन अलग-अलग क्रमबद्ध सरणियों के (अधिकतम (ए [i], बी [जे], सी [के]) - न्यूनतम (ए [i], बी [जे], सी [के])) को छोटा करें

मान लीजिए कि हमारे पास तीन क्रमबद्ध सरणियाँ हैं A, B, और C (ये विभिन्न आकारों के हो सकते हैं), हमें किसी भी त्रिक (A[i],B[j], की अधिकतम और न्यूनतम संख्या के बीच न्यूनतम निरपेक्ष अंतर की गणना करनी होगी। सी [के]) जैसे कि वे क्रमशः ए, बी और सी सरणी के अंतर्गत हैं,

इसलिए, यदि इनपुट ए:[2, 5, 6, 9, 11], बी:[7, 10, 16], सी:[3, 4, 7, 7] जैसा है, तो आउटपुट 1 जैसा होगा ए [i] =6 बी [जे] =7 और सी [के] =7 का चयन करके, हम न्यूनतम अंतर को अधिकतम (ए [i], बी [जे], सी [के]) - मिनट (ए) के रूप में प्राप्त करेंगे [i], बी [जे], सी [के])) =|7-6| =1

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

  • i :=A-1 का आकार
  • j :=B-1 का आकार
  • k :=C-1 का आकार
  • minimum_dfference :=|अधिकतम A[i], B[j], C[k] - न्यूनतम A[i], B[j], C[k]|
  • जबकि मैं -1 के समान नहीं है और j -1 के समान नहीं है और k -1 के समान नहीं है, करते हैं
    • current_diff :=|अधिकतम A[i], B[j], C[k] - न्यूनतम A[i], B[j], C[k]|
    • यदि current_diff <न्यूनतम_dfसंदर्भ गैर-शून्य है, तो
      • न्यूनतम_dfference:=current_diff
    • maximum_term :=अधिकतम A[i], B[j], C[k]
    • यदि A[i], max_term के समान है, तो
      • i :=i - 1
    • अन्यथा जब B[j] max_term के समान हो, तो
      • j :=j-1
    • अन्यथा,
      • k :=k - 1>
  • न्यूनतम_dfference लौटाएं

उदाहरण

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

def solve(A, B, C):
   i = len(A) - 1
   j = len(B) - 1
   k = len(C) - 1
   minimum_dfference = abs(max(A[i], B[j], C[k]) - min(A[i], B[j], C[k]))
   while i != -1 and j != -1 and k != -1:
      current_diff = abs(max(A[i], B[j], C[k]) - min(A[i], B[j], C[k]))
      if current_diff < minimum_dfference:
         minimum_dfference = current_diff
      maximum_term = max(A[i], B[j], C[k])
      if A[i] == maximum_term:
         i -= 1
      elif B[j] == maximum_term:
         j -= 1
      else:
         k -= 1
   return minimum_dfference
A = [ 2, 5, 6, 9, 11 ]
B = [ 7, 10, 16 ]
C = [ 3, 4, 7, 7 ]
print(solve(A, B, C))

इनपुट

A = [ 2, 5, 6, 9, 11 ] B = [ 7, 10, 16 ] C = [ 3, 4, 7, 7 ]

आउटपुट

1

  1. दो क्रमबद्ध सरणियों से निकटतम जोड़ी खोजने के लिए पायथन कार्यक्रम

    इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे। समस्या कथन - हमें दो सरणियाँ दी गई हैं, हमें दो क्रमबद्ध सरणियों से निकटतम जोड़ी खोजने की आवश्यकता है आइए अब नीचे दिए गए कार्यान्वयन में समाधान देखें - उदाहरण # sys module import sys # pair def print_(ar1, ar2, m, n, x):  

  1. तीन क्रमबद्ध सरणियों में सामान्य तत्वों को खोजने के लिए पायथन कार्यक्रम?

    यहां पहले हम 3 एरे बनाते हैं जो यूजर इनपुट अनसोल्ड ऐरे हैं, फिर हम सभी 3 अनसोल्ड एरे को सॉर्ट करते हैं। सरणियों का आकार n1,n2,n3 है। प्रत्येक सरणी का प्रारंभिक पता 0.i=0,j=0,k=0 है, फिर तीन सरणी के सभी तत्वों को पार करें और तीन सरणियों के तत्व की जांच करें या समान हैं या नहीं, यदि समान है तो तत्व को

  1. पायथन में इनट्स के लिए अधिकतम और न्यूनतम मान कैसे जानें?

    पायथन की कोर लाइब्रेरी में दो बिल्ट-इन फंक्शन हैं, अधिकतम () और न्यूनतम () क्रमशः, सूची या टपल ऑब्जेक्ट के रूप में संख्याओं के अनुक्रम से अधिकतम और न्यूनतम संख्या खोजने के लिए। उदाहरण >>> max(23,21,45,43) 45 >>> l1=[20,50,40,30] >>> max(l1) 50 >>> t1=(30,50,20,40)