Zahlen eines Arrays der Größe nach sortieren!
Hagi
- javascript
0 Götz
Hi!
Hab ein kleines Problem! Bin noch Anfänger und ich möchte die 3 kleinsten Elemente eines Arrays finden!
Die kleinste Zahl zu finden hab ich folgendermaßen gelöst:
kleinste = zahl[0];
for(var i=1; i < zahl.length; i++)
{
kleinste = Math.min(zahl[i], kleinste);
}
Wie mach ich das jetzt am besten wenn ich auch die zweit- und drittkleinste Zahl finden möchte??
Danke!
Lg Daniel
Hallo Hagi!
[...] ich möchte die 3 kleinsten Elemente eines Arrays finden!
Dann sortier erstmal alle Elemente des Arrays der Größe nach, und gib dann die 3 ertsne bzw. letzten Elemente aus (je nachdem, wie sortiert wurde).
(Lesetip: http://selfhtml.teamone.de/javascript/objekte/array.htm#sort)
Alternativ kannst Du auch einfach 3 mal nacheinander das Minimum suchen, es aus dem Array entfernen, und wieder nach dem Minimum suchen. Dieser Ansatz ist aber nicht unbedingt sinnvoller.
MfG
Götz
Hallo,
Alternativ kannst Du auch einfach 3 mal nacheinander das Minimum suchen, es aus dem Array entfernen, und wieder nach dem Minimum suchen. Dieser Ansatz ist aber nicht unbedingt sinnvoller.
Ja nach Größe des Arrays kann er schon Sinn machen. Wenn du drei mal durch dein Array durchläufst, dann hast du weniger Aufwand, als wenn du das komplette Array sortierst.
Bei wenig Einträgen wird sich das sicherlich nicht bemerkbar machen, aber irgendwo gibt es bestimmt eine Grenze, ab der es Sinn macht auf das komplette Sortieren zu verzichten.
Viele Grüße,
Stefan