🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: fr.comp.lang.c
Article #90

Re: [Algo] Trouver les n premiers maxima

#90
From: Jean-Marc Bourguet
Date: Wed, 03 Jul 2002 15:26
36 lines
2522 bytes
"Pierre" <curl_TRACE@netcourrier.com> writes:

> Bonjour,
> Ma question ne porte pas sp�cifiquement sur le C, mais plutot sur
> l'algorithmie. (D�sol� pour ce l�ger HS)
> 
> Voila,
> je cherche � trouver les n premiers maxima dans un tableau de N �lements.
> Je me creuse la t�te pour trouver un algorithme simple, et rapide (..DSP..),
> mais je n'ai manifestement pas trouv� la m�thode qui me convienne.
> (je r�alise n passes pour trouver � chaque fois le maximum) ..
> 
> Quelqu'un a une suggestion , un lien, une id�e ??

De memoire:

* Tu conserves un tableau trie de n elements et tu inseres dedans a
  chaque fois si c'est necessaire.  n N au pire mais en moyenne ca
  doit etre meilleur.

* Heapsort en limitant le nombre de recherche a n (l'initialisation du
  tas est en N, l'extraction en log N, donc on est en N + n log N)

* quicksort en sautant les recursions dans la zone qui n'interesse
  pas.  A nouveau au pire nN mais en moyenne mieux.

Le probleme est traite dans Knuth.

XPost&FU2: fr.comp.developpement, le groupe approprie sous fr.*
(Note: j'avais marque le XPost mais oublie de le faire dans une
premiere version).

-- 
Jean-Marc
FAQ de fclc:       http://www.isty-info.uvsq.fr/~rumeau/fclc
Site de usenet-fr: http://www.usenet-fr.news.eu.org
Technical Details
Message-ID: <3d2317c5$0$10524$626a54ce@news.free.fr>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!newsfeed.icl.net!newsfeed.fjserv.net!news.mailgate.org!fr.usenet-edu.net!usenet-edu.net!proxad.net!feeder2-1.proxad.net!news1-1.free.fr!not-for-mail
References: <afurmm$gf2$1@wanadoo.fr>

Show Full Headers
Complete Article Headers
X-Google-Language: FRENCH,ASCII
X-Google-Thread: 102e15,7f8edde06ec10950,start
X-Google-Attributes: gid102e15,public
X-Google-Thread: f9822,a0fbe98c1e51f5ad
X-Google-Attributes: gidf9822,public
X-Google-ArrivalTime: 2002-07-03 08:27:02 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!newsfeed.icl.net!newsfeed.fjserv.net!news.mailgate.org!fr.usenet-edu.net!usenet-edu.net!proxad.net!feeder2-1.proxad.net!news1-1.free.fr!not-for-mail
Newsgroups: fr.comp.lang.c,fr.comp.developpement
Followup-To: fr.comp.developpement
Subject: Re: [Algo] Trouver les n premiers maxima
References: <afurmm$gf2$1@wanadoo.fr>
From: Jean-Marc Bourguet <jm@bourguet.org>
Supersedes: <3d23166c$0$580$626a54ce@news.free.fr>
Organization: Guest of ProXad - France
Date: 03 Jul 2002 17:26:48 +0200
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8bit
Lines: 36
Message-ID: <3d2317c5$0$10524$626a54ce@news.free.fr>
NNTP-Posting-Date: 03 Jul 2002 17:27:01 MEST
NNTP-Posting-Host: 158.140.208.29
X-Trace: 1025710021 news1-1.free.fr 10524 158.140.208.29
X-Complaints-To: abuse@proxad.net