Article View: fr.comp.lang.c
Article #15647Re: Routine de trie pour une liste de structure.
From: Charlie Gordon
Date: Wed, 14 Sep 2005 11:17
Date: Wed, 14 Sep 2005 11:17
45 lines
3517 bytes
3517 bytes
"Jean-Marc Bourguet" <jm@bourguet.org> wrote in message news:pxbslwa21yn.fsf@news.bourguet.org... > "Charlie Gordon" <news@chqrlie.org> writes: > > > > Ca ressemble � un bubble sort, c'est un excellent algo de tri pour les > > > listes qui font 1 ou 2 �l�ments. Mauvaise attribution, c'est Harpo qui a dit cela. > En pratique le bubble sort (ou le shaker sort qui est une variante) > est bien adapte aux cas ou les donnees sont quasiment triees: il peut > avoir un comportement en n sous certaines conditions alors qu'un quick > sort -- mal implemente -- peut meme exhiber un comportement > quadratique . Un bon professionnel -- puisque le terme a ete lance -- > va donc l'utiliser dans certains cas. > > > Non, c'est effectivement un tri par insertion (complexit� n^2), > > nettement plus efficace que bubble sort (n^3 ?), > > bubble sort est aussi du n^2 (facile a montrer: a chaque passe au > moins un element en plus est a sa place terminale) Mais � un prix pplus important que le tri par insertion : plus d'�changes. > > mais moins que qsort (n.log(n)), > > qsort c'est difficile a dire, il n'y a pas de contrainte. > L'implementation classique est un quick sort qui a une complexite > quadratique egalement dans le pire cas (attention, suivant la maniere > de choisir le pivot, et les caracteristiques des donnees, le pire cas > peut arriver de maniere certaine dans des cas courants) mais n log n > en moyenne. J'ai deja vu decrite des implementations recourant au > heap sort (garanti n log n -- mais avec une constante relativement > mauvaise) si elles remarquent que la recursion a l'air de prendre un > mauvais bout. Oui, la complexit� de quick sort est un sujet difficile, et son impl�mentation est une source de maux de tete consid�rable. On peut ajouter au rang de ses "probl�mes" la non stabilit� du tri et la propension � produire des r�sultats surprenants quand la fonction de comparaison a de mauvaises proprietes : pas exemple strcasecmp n'est pas n�cessairement transitive. -- Chqrlie.
Technical Details
Message-ID:
<dg8vdi$hsh$1@reader1.imaginet.fr>Path:
arc1-ca.pugleaf.net!g2news1.google.com!news4.google.com!border1.nntp.dca.giganews.com!nntp.giganews.com!nx02.iad01.newshosting.com!newshosting.com!newsfeed.icl.net!newsfeed.fjserv.net!news-lond.gip.net!news.gsl.net!gip.net!colt.net!fr.colt.net!writer!not-for-mailReferences:
<4322f71b$0$17773$ba620e4c@news.skynet.be> <432306a8$0$1023$8fcfb975@news.wanadoo.fr> <43230d96$0$6578$ba620e4c@news.skynet.be> <432447e6$0$1740$8fcfb975@news.wanadoo.fr> <43246b95$0$305$7a628cd7@news.club-internet.fr> <432472f2$0$17219$8fcfb975@news.wanadoo.fr> <4324794b$0$303$7a628cd7@news.club-internet.fr> <4324c20f$0$20167$8fcfb975@news.wanadoo.fr> <dg2lo5$c4p$1@reader1.imaginet.fr> <pxbslwa21yn.fsf@news.bourguet.org>Show Full Headers
Complete Article Headers
X-Google-Thread: f9822,5d389ec4d86f895c X-Google-Attributes: gidf9822,public X-Google-Language: FRENCH,ASCII Path: arc1-ca.pugleaf.net!g2news1.google.com!news4.google.com!border1.nntp.dca.giganews.com!nntp.giganews.com!nx02.iad01.newshosting.com!newshosting.com!newsfeed.icl.net!newsfeed.fjserv.net!news-lond.gip.net!news.gsl.net!gip.net!colt.net!fr.colt.net!writer!not-for-mail From: "Charlie Gordon" <news@chqrlie.org> Newsgroups: fr.comp.lang.c Subject: Re: Routine de trie pour une liste de structure. Date: Wed, 14 Sep 2005 13:17:32 +0200 Organization: ImagiNET / Colt Internet Lines: 47 Message-ID: <dg8vdi$hsh$1@reader1.imaginet.fr> References: <4322f71b$0$17773$ba620e4c@news.skynet.be> <432306a8$0$1023$8fcfb975@news.wanadoo.fr> <43230d96$0$6578$ba620e4c@news.skynet.be> <432447e6$0$1740$8fcfb975@news.wanadoo.fr> <43246b95$0$305$7a628cd7@news.club-internet.fr> <432472f2$0$17219$8fcfb975@news.wanadoo.fr> <4324794b$0$303$7a628cd7@news.club-internet.fr> <4324c20f$0$20167$8fcfb975@news.wanadoo.fr> <dg2lo5$c4p$1@reader1.imaginet.fr> <pxbslwa21yn.fsf@news.bourguet.org> NNTP-Posting-Host: gw.netgem.com X-Trace: reader1.imaginet.fr 1126695154 18321 195.68.2.34 (14 Sep 2005 10:52:34 GMT) X-Complaints-To: abuse@imaginet.fr NNTP-Posting-Date: 14 Sep 2005 10:52:34 GMT X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2800.1506 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1506