stl - anfängerproblem....
-
hi, ich habe ein array von integern.
dieses array habe ich mit sort aus der stl sortiert.
nun möchte ich (wenn möglich mit der stl) den grössten werteabstand der
nebeneinanderliegenden elemente ermitteln.// unsortiert...... int a[] = { 12,1,15,9,4 ,5 }; // sortiert // 1,4,5,9,12,15 // der grösste abstand ist hier zwischen 5 und 9 = 4da ich mit der stl noch nicht sehr vertraut bin, bitte ich um hilfe !
-
also, eine spezielle funktion, die sowas macht, kenn ich persönlich nicht, glaub auch nicht, dass es so eine gibt.
Wenn du es unbedingt mit der stl machen willst, dann nimm doch von vornherein einen vector<int> oder eine list<int>, kannst mit pus_back füllen und mit sort sortieren. List hat ne eigene sortierfunktion.
Dann kannst du alle Elemente durchsuchen und den größten abstand per hand ermitteln
-
sort geht auch auf Arrays.
int a[] = { 12,1,15,9,4 ,5 }; std::sort(a, a + 6);Ich weiß allerdings nie wie es nun sortiert wird, das vergess ich immer

Gruß
-
Man könnte z. B. adjacent_difference und max_element benutzen ...