Array nach kleinstem Element durchsuchen
-
Hi,
ich such eine funktion die mir einen array durchsucht und mir das kleinste element herausgibt und die jeweilige position im array. Gibt es sowas schon fertig bei C#?
mfg
-
Servus,
du kannst ein Array.Sort() machen und dir das erste Element schnappen...
mfg
Hellsgore
-
Hellsgore schrieb:
du kannst ein Array.Sort() machen und dir das erste Element schnappen...
Das ist aber ineffizient. Bei großen Arrays sollte man auf jeden Fall in einer Schleife das Array durchlaufen:
public static T SmallestElement<T>(IEnumerable<T> elements) where T : IComparable<T> { IEnumerator<T> iter = elements.GetEnumerator(); if (!iter.MoveNext()) throw new IndexOutOfRangeException(); T ret = iter.Current; while (iter.MoveNext()) if (iter.Current.CompareTo(ret) < 0) ret = iter.Current; return ret; }