webForumDet fria alternativet

max() i multi-array... eller?

PHPur PHP

1 svar · 284 visningar · startad av herq

Medlem sedan aug. 2000238 inlägg
Frågan#1

Har en multi-array som ser ut så här:

Array
(
    [1] => Array
        (
            [date] => 2004-12-10
            [close] => 21.80
        )

    [2] => Array
        (
            [date] => 2004-12-13
            [close] => 21.60
        )

    [3] => Array
        (
            [date] => 2004-12-14
            [close] => 21.80
        )

    [4] => Array
        (
            [date] => 2004-12-15
            [close] => 21.40
        )

    [5] => Array
        (
            [date] => 2004-12-16
            [close] => 21.70
        )
)

Nu vill jag ta ut det högsta och lägsta [close]-värdet som finns, alltså 21.80 och 21.40, (det spelar ingen roll att det finns flera likadana max-värden eller min för den delen).

Jag får inte riktigt till det med max()

Hur ska jag göra? (hjälp! snälla!)

(och nej, jag vill inte behöva loopa igenom arrayen o jämföra värden)

Medlem sedan sep. 2001118 inlägg
#2

herq skrev:

(och nej, jag vill inte behöva loopa igenom arrayen o jämföra värden)

Av prestanda-skäl lr? .. Jag är ingen expert på prestanda men .. Det är exakt så max-funktionen implementeras. Det enda sättet att hitta högsta eller lägsta värdet i en osorterad mängd är att loopa igenom alla värden.

En algoritm du skriver för att lösa ditt specifika problem är förmodligen mer effektiv än en generell som klarar flera typer av input-värden.

260 ms totalt · 3 externa anrop · v20260731065814-full.b746b907
138 ms — hämta forumlista (db)
120 ms — hämta statistik (db)
138 ms — hämta tråd, inlägg och bilagor (db)