2012-09-29 14 views
5

मुझे न्यूनतम 5 पूर्णांक मानों को खोजने की आवश्यकता है। अगर मैंने तुलना करने के लिए और कथन का उपयोग किया है। तो यह अच्छा नहीं लग रहा है। यानी कोड बहुत लंबा है। मुझे नहीं पता कि कोड जटिलता को कैसे कम किया जाए। क्या कोई मेरी मदद कर सकता है?5 पूर्णांक के बीच न्यूनतम मान खोजें?

सादर, Karthi

उत्तर

5

चेक बाहर LINQ की Min विधि।

9

आप LINQ से Min विधि का उपयोग कर सकते हैं:

var list = new[] {1, 2, 3, 4, 5}; 
int min = list.Min(); 

यहाँ LINQ Min की सूची का उल्लेख कर सकते हैं:

http://msdn.microsoft.com/en-us/library/system.linq.enumerable.min.aspx

+0

अच्छा अगर वे एक सरणी में पहले से ही कर रहे हैं या आप इस तरह के एक सरणी बनाने आपत्ति नहीं है। +1। – paxdiablo

6

आप के लिए एक कारगर तरीका के लिए Math.Min विधि का उपयोग कर सकते हैं न्यूनतम प्राप्त करें:

int min = Math.Min(Math.Min(Math.Min(Math.Min(n1, n2) ,n3), n4), n5); 

कुछ अन्य विकल्प है कि अधिक पठनीय (और मापनीय) हो सकता है लेकिन काफी के रूप में कुशल नहीं:

int min = new int[]{ n1, n2, n3, n4, n5}.Min(); 

int min = new SortedSet<int>() { n1, n2, n3, n4, n5 }[0]; 
+0

अच्छा अगर वे एक सरणी में नहीं हैं, हालांकि, यह स्केल नहीं होगा। लेकिन, चूंकि क्यू ने केवल 5 कहा, फिर +1। हालांकि, मैं शायद इसे अपने स्वयं के 'Min5 (ए, बी, सी, डी, ई) 'फ़ंक्शन को बेहतर बनाने के लिए तैयार करूंगा। – paxdiablo

+0

मूल्यों को पहले सरणी में रखने के लिए यह अधिक पठनीय होगा, IMHO। – driis

+0

@driis: हाँ, यह एक विकल्प है, लेकिन यह अधिक कुशल है। मैं एक विकल्प दिखाना चाहता था जहां आपको सरणी बनाने की ज़रूरत नहीं है। – Guffa

संबंधित मुद्दे