Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Niedrigstes Element eines Arrays identifizieren???

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 < [ 2 ]
000
13.11.2010, 20:17 Uhr
~Alex8888
Gast


Hallo.

Gibt es irgenteine Funktion mit der ich das niedrigste Element eines Arrays identifizieren kann?
Wichtig ist nicht welchen Wert das Element hat sondern um welches Element es sich handelt..

kann mir jemand weiterhelfen?

lg Alex
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
13.11.2010, 22:46 Uhr
Hans
Library Walker
(Operator)


Hi,

das niedrigste Element eines Arrays ist das Element Null, bei dem auch die Zählung der Elemente anfängt. Das ist immer so, deshalb braucht man keine Funktion um das zu ermitteln.

Hans
--
Man muss nicht alles wissen, aber man sollte wissen, wo es steht. Zum Beispiel hier: Nachdenkseiten oder Infoportal Globalisierung.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
14.11.2010, 10:38 Uhr
öni



Ich glaube eher er möchte das Element mit dem niedrigsten Wert, wobei der Wert egal ist sondern er den Index benötigt.

Da würde ich ne Schleife bauen und eben mir den Index des niedrigsten Element speichern und immer wieder vergleichen. So ähnlich wie ein Sortieralgorithmus.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
14.11.2010, 14:06 Uhr
Hans
Library Walker
(Operator)


Naja, wenn man es so sieht, fällt es in die Kategorie "Suchen und Sortieren" wobei es sozusagen der erste Schritt zu einfachen Sortieralgorithmen ist.
--
Man muss nicht alles wissen, aber man sollte wissen, wo es steht. Zum Beispiel hier: Nachdenkseiten oder Infoportal Globalisierung.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
14.11.2010, 15:37 Uhr
~toxic
Gast



C++:
// ungetestet
int array[9] = { 3, 2, 1, 4, 8, 9, 7, 6, 5  };
int i, index=-1, minor=array[0];
for ( i = 0; i < 9; ++i )
{
    if ( array[i] < minor )
    {
        minor = array[i];
        index = i;
    }
}

 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
14.11.2010, 17:14 Uhr
0xdeadbeef
Gott
(Operator)



C++:
#include <algorithm>
#include <cstddef>

template<typename T, std::size_t N>
std::size_t array_size(T(&)[N]) { return N; }

// ...

int a[] = { 3, 1, 4, 1, 5, 9 };
int *p = std::min_element(a, a + array_size(a));


--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra

Dieser Post wurde am 14.11.2010 um 17:16 Uhr von 0xdeadbeef editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
14.11.2010, 21:03 Uhr
Hans
Library Walker
(Operator)


ts, ts, Beefy und seine Template Routinen mal wieder...

------

@~toxic: funktioniert aber...
--
Man muss nicht alles wissen, aber man sollte wissen, wo es steht. Zum Beispiel hier: Nachdenkseiten oder Infoportal Globalisierung.

Dieser Post wurde am 14.11.2010 um 21:21 Uhr von Hans editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
15.11.2010, 01:42 Uhr
0xdeadbeef
Gott
(Operator)


Es handelt sich dabei nicht um eine Template-Routine, sondern um eine Routinen-Template (bzw. Funktionsvorlage). Sie ist im Umgang mit Arrays ausgesprochen praktisch; man könnte natürlich auch

C++:
int a[] = { 3, 1, 4, 1, 5, 9 };
int *p = std::min_element(a, a + 6);


schreiben, aber dann müsste man den Aufruf von std::min_element<int*> anpassen, sobald sich etwas am Array ändert. Jetzt ist std::min_element natürlich auch eine Funktionsvorlage, aber nicht meine (Standardbibliothek, ha!).
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
15.11.2010, 20:40 Uhr
Hans
Library Walker
(Operator)


da sieht man mal wieder, das ich von Templates und was damit zusammen hängt nur begrenzt Ahnung habe...
--
Man muss nicht alles wissen, aber man sollte wissen, wo es steht. Zum Beispiel hier: Nachdenkseiten oder Infoportal Globalisierung.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
20.11.2010, 17:55 Uhr
~toxic
Gast


hi,
aber beefy'S lösung liefert doch "nur" das niedrigste element, nicht aber die position im array ? oder seh ich da was falsch?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ]     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: