Rechercher : dans
Par :

Algo recherche dichotomique

Dernière réponse le 9 mai 2009 à 23:09:21 miya26, le 5 déc 2007 à 23:57:35 
 Signaler ce message aux modérateurs

Bonjour,,aidez moi a ecrire un algorithme qui permet d effectuer la recherche dichotomique dans un tableau d entiers

Meilleures réponses pour « Algo recherche dichotomique » dans :
Google - Recherche dans un site ou un domaine précis VoirAvec Google il est possible de limiter la recherche à un site ou à un domaine spécifique en utilisant l’opérateur site: Syntaxe à utiliser : mot_clé site:site_ou_domaine Ex : virus site:www.commentcamarche.net ou virus site:.com
Google Desktop - Rechercher localement des données VoirFiltrer les résultats Consulter un document Afficher différentes versions d’un document Supprimer des éléments de l’index Effectuer une recherche avancée Verrouiller les recherches Il est temps à présent de réaliser votre première...
Rechercher sur Internet VoirRechercher sur Internet Etant donné le nom de pages web présentes pour le Web, il est nécessaire d'utiliser un outil pour rechercher une page spécifique correspondant à des critères de recherche: le moteur de recherche. Pour utiliser un moteur de...
PHP - Créer un moteur de recherche VoirIdée générale Le moteur de recherche ci-dessous ne correspond qu'à une idée possible de moteur de recherche simple, ne gérant qu'un seul mot clé. Le concept du fonctionnement de ce moteur est de créer une base de donnée contenant les mots clés de...
Web - Moteur de recherche VoirIl existe une énorme quantité d'informations sur Internet (plusieurs millions ou milliards de documents), et ces informations sont pour la plupart renouvelées quotidiennement. Le moteur de recherche est un élément indispensable pour s'y...

1

_Agnes, le 5 déc 2007 à 23:59:29

Bonsoir

Avec un "s'il vous plaît, merci" c'eût été mieux !

++
Elle pleure, elle pleure, ma planète...
Elle sent que sa fin est proche et ça la rend folle

Répondre à _Agnes

3

le roi gw, le 10 déc 2007 à 21:36:27

# //Librairies
# #include...
#
# //Variables globales
# typedef struct
# { char nom_ville[32];
# char nom[32];
# char tel[11];
# }Tindex;
#
# Tindex idx[Max];
# int j;
#
# /* Trie Bubble Sort - Création d'un Index trié
# en fonction des numéros de téléphones */
#
# void tri_tel_index()
# {int k;
# Tindex temp[Max];
# for(k=Max-1;k!=0;k--)
# { for(j=0;j<k;j++)
# { if((strcmp(idx[j].tel,idx[j+1].tel))>0)
# { temp[0]=idx[j];
# idx[j]=idx[j+1];
# idx[j+1]=temp[0];
# }
# }
# }
# j=0;
# }
#
# //Prog. principal
# void main() {
# ...
# }
#
# Algo Général de la Recherche Dichotomique
#
# Procedure recherche_dichotomique(par val ent elt, par val ent N, par val ent T[])
# Debut
# |
# | var inf, sup, m;
# | inf <- 1;
# | sup <- N;
# | m <- (inf+sup) div 2;
# | /* en C++ m = (int)((inf+sup)/2) */
# |
# | /* Ici l'astuce : la borne supérieure ou inférieure est modifiée,
# | le tableau n'est plus parcouru dans son ensemble */
# |
# |
# | Tant que (T[m] != elt et inf < sup) faire
# | |
# | | Si (elt < T[m]) alors
# | | |
# | | | sup <- m - 1;
# | | |
# | | | Sinon inf <- m + 1;
# | | |
# | | Fin Si
# | |
# | | m <- (inf + sup) div 2;
# | |
# | Fin Tque
# |
# | Si (T[m] = elt)
# | |
# | | Afficher("L'element se trouve à l'indice m")
# | |
# | | Sinon Afficher ("L' élément n'existe pas ")
# | |
# | Fin Si
# |
# Fin

Répondre à le roi gw

4

THE TERRORISTE, le 8 mai 2009 à 01:53:48
  • +1

Slt jespere ke Pierre propose à Paul le jeu suivant: « choisis en secret un nombre compris entre 0 et 100; je vais essayer de le deviner le plus rapidement possible, mais tu ne dois répondre à mes questions que par oui ou par non ». Paul choisit 65 et attend les questions de Pierre:

est-ce que le nombre est plus grand que 50? (100 divisé par 2)
oui
est-ce que le nombre est plus grand que 75? ((50 + 100) / 2)
non
est-ce que le nombre est plus grand que 63? ((50 + 75 + 1) / 2)
oui
Pierre réitère ses questions jusqu'à trouver 65. Par cette méthode itérative, Pierre est sûr de trouver beaucoup plus rapidement le nombre qu'en posant des questions du type « est-ce que le nombre est égal à 30? ».

Algorithme [modifier]
//déclarations
début, fin, val, mil : Entier
t : Tableau [0..100] d'entier
trouvé : Booléen

//initialisation
début <- 0
fin <- 100
trouvé <- faux

//Question
Répéter
Afficher "Valeur recherchée ? (entre 0 et 100)"
Saisir val
Jusqu'à début<=val et val<=fin

//Boucle de recherche
Répéter
mil <- début + ((fin-début) / 2)
Si t[mil] = val alors
trouvé <- vrai
Sinon
Si val > t[mil] Alors
début <- mil + 1
Si t[début] = val Alors
mil <- début
trouvé <- Vrai
FinSi
Sinon
fin <- mil – 1
Si t[fin] = val Alors
mil <- fin
trouvé <- vrai
FinSi
FinSi
FinSi
Jusqu’à trouvé ou ( début >= fin )
//Affichage du résultat
Afficher "La valeur est ", val
ceci taidera.

Répondre à THE TERRORISTE

5

 kamelbouzgou, le 9 mai 2009 à 23:09:21
  • +1

Bonjour
algo recherche
t[i] tableau de 0.. n entier
a,b:entier
debut
a:=t[0]
b:=t[n]
m:=(a+b)/2
repeter
si x>m alors
a:=m
sinon b:=m
jusqu'a x=m
afficher ('le nombre rechercher x=',m)

Répondre à kamelbouzgou