Article View: chile.comp.programacion
Article #84Re: Pregunta ordenes de tiempo en PHP
From: Jos� Miguel Santib��ez
Date: Fri, 09 Sep 2005 02:58
Date: Fri, 09 Sep 2005 02:58
37 lines
2767 bytes
2767 bytes
En el cap�tulo anterior (news:dfqn6d$u0h$1@localhost.localdomain), Chano
<chano@lj.NOSPAM.cl> dijo:
> En PHP, si tengo un array, $variable[$indice] = algo , por ejemplo
> , en donde $indice
> es un valor entero mayor a cero y no consecutivo (9,1,345, 123, 244),
> cual es el orden ( O(x) ) de hacer la operacion:
>
> if ( $variable[$valor] )
>
> O sea, consultar si un valor est� definido como llave en un arreglo.
>
> Se comportara como un hash, por lo que seria O(1), o no?
>
> Gracias :)
>
> (con orden me refiero a que, por ejemplo, el orden de una busqueda
> secuencial sobre n elementos es O(n). Un for de 1 a n, dentro de un
> for de 1 a m es O(n*m) )
Hmmm.. lamento no tener respuesta real a tu pregunta, aunque hay que
aclarar que la premisa inicial no es correcta. Ese if no solo chequea si un
valor est� definido como llave, sino que adem�s la data sea distinta de
null y/o 0.
De hecho, la forma correcta ser�a: if(array_key_exists($valor, $variable))
aunque las discusiones en php.net afirman que es m�s lenta... Sin embargo,
tengo la impresi�n que para el caso que planteas, lo m�s probable es que
sean similares... Pero al no conocer la forma en que opera la funci�n, no
se si es posible indicar el orden... (hace a�os que no veo nada de eso).
Salute!
--
Jose M. Santiba�ez A.
<jms@nivel5.cl>
<http://caos.cl/jms>
Technical Details
Message-ID:
<Xns96CBE9C9F77EFjmsnews@200.27.221.71>Path:
arc1-ca.pugleaf.net!g2news1.google.com!news3.google.com!border1.nntp.dca.giganews.com!border2.nntp.dca.giganews.com!nntp.giganews.com!atl-c02.usenetserver.com!news.usenetserver.com!atl-c04.usenetserver.com!news.usenetserver.com!newsfeed.yul.equant.net!news-santiago!news1.nivel5.cl!news.vcd.cl!not-for-mailReferences:
<dfqn6d$u0h$1@localhost.localdomain>Show Full Headers
Complete Article Headers
X-Google-Thread: 1593cb,ba4785603e789050
X-Google-Thread: 107d6b,ba4785603e789050
X-Google-Attributes: gid1593cb,gid107d6b,public
X-Google-Language: SPANISH,ASCII
Newsgroups: chile.comp.programacion,chile.comp.misc
Subject: Re: Pregunta ordenes de tiempo en PHP
From: "Jos� Miguel Santib��ez" <jms.nospam@nivel5.cl>
References: <dfqn6d$u0h$1@localhost.localdomain>
Organization: Caos Consultores
Message-ID: <Xns96CBE9C9F77EFjmsnews@200.27.221.71>
User-Agent: Xnews/5.04.25
X-Face: +|NgjgFM{<rs%\Q|vUu16]a6,}?MJTA<!PEEI+x&Gw-Gyq+?$}fvo+.(,-r;)~Qzn)#{{nxU,OT?w^s<7m4ckCJ*L$c#I)yHL7b)GdU*#l
NNTP-Posting-Host: 223-206-246-201.adsl.terra.cl
X-Original-NNTP-Posting-Host: 223-206-246-201.adsl.terra.cl
Date: 8 Sep 2005 22:58:14 -0400
X-Trace: news.vcd.cl!not-for-mail 1126231094 223-206-246-201.adsl.terra.cl (8 Sep 2005 22:58:14 -0400)
X-Original-Trace: 8 Sep 2005 22:58:14 -0400, 223-206-246-201.adsl.terra.cl
Lines: 37
X-Authenticated-User: jms
Path: arc1-ca.pugleaf.net!g2news1.google.com!news3.google.com!border1.nntp.dca.giganews.com!border2.nntp.dca.giganews.com!nntp.giganews.com!atl-c02.usenetserver.com!news.usenetserver.com!atl-c04.usenetserver.com!news.usenetserver.com!newsfeed.yul.equant.net!news-santiago!news1.nivel5.cl!news.vcd.cl!not-for-mail