Aide en exercice d'algorithme
Fermé
nostalgieing
-
9 avril 2010 à 12:01
--Pouet-- Messages postés 45 Date d'inscription mercredi 7 avril 2010 Statut Membre Dernière intervention 10 décembre 2011 - 9 avril 2010 à 12:23
--Pouet-- Messages postés 45 Date d'inscription mercredi 7 avril 2010 Statut Membre Dernière intervention 10 décembre 2011 - 9 avril 2010 à 12:23
Bonjour
j'ai un exercice en algorithme et complexité et j'ai pas pu le resoudre et j'espere que vous pouvez m'aider
l'exercice est le suivant:
Donner un algorithme recursif qui determine si tous les elements d'un tableau de taille n sont distincts et calculer la complexité de cet algorithme
c'est urgent svp svp svp si quelqu'un peut m'aider n'hesitez pas de m'aider
j'ai un exercice en algorithme et complexité et j'ai pas pu le resoudre et j'espere que vous pouvez m'aider
l'exercice est le suivant:
Donner un algorithme recursif qui determine si tous les elements d'un tableau de taille n sont distincts et calculer la complexité de cet algorithme
c'est urgent svp svp svp si quelqu'un peut m'aider n'hesitez pas de m'aider
A voir également:
- Aide en exercice d'algorithme
- Logiciel algorithme euromillion - Télécharger - Loisirs créatifs
- Logiciel algorithme gratuit - Télécharger - Édition & Programmation
- Code ascii en algorithme - Guide
- Exercice algorithme bts cg ✓ - Forum Programmation
- Algorithme euromillion excel gratuit ✓ - Forum VB / VBA
5 réponses
--Pouet--
Messages postés
45
Date d'inscription
mercredi 7 avril 2010
Statut
Membre
Dernière intervention
10 décembre 2011
9
9 avril 2010 à 12:04
9 avril 2010 à 12:04
Hum, quel est le point qui bloque dans ton algorithme ?
j'ai connu juste une methode iterative
var i,j:integer;
boolean trouve=false // pour indiquer si deux elements sont distincts
for i:=1 to n do
for j:=i+1 to n do {
if (T[i]<>T[j]) then
trouve=true;
else
trouve=false
En plus je sais pas est ce que mon algorithme que j'ai fais est vrai ou non meme je peux pas calculer sa complexité et ça me fais un probleme et l'enoncé de l'exercice parle de deux version une iterative l'autre recursive
Si vous pouvez m'aider n'hesitez pas et merci
var i,j:integer;
boolean trouve=false // pour indiquer si deux elements sont distincts
for i:=1 to n do
for j:=i+1 to n do {
if (T[i]<>T[j]) then
trouve=true;
else
trouve=false
En plus je sais pas est ce que mon algorithme que j'ai fais est vrai ou non meme je peux pas calculer sa complexité et ça me fais un probleme et l'enoncé de l'exercice parle de deux version une iterative l'autre recursive
Si vous pouvez m'aider n'hesitez pas et merci
--Pouet--
Messages postés
45
Date d'inscription
mercredi 7 avril 2010
Statut
Membre
Dernière intervention
10 décembre 2011
9
9 avril 2010 à 12:16
9 avril 2010 à 12:16
En iteratif ça peut donner un truc du genre :
var i,j:integer;
boolean tousDistincts=true
for i:=1 to n do
for j:=1 to n do {
if (T[i]==T[j]) then
tousDistincts=false
exit //quitter la fonction
var i,j:integer;
boolean tousDistincts=true
for i:=1 to n do
for j:=1 to n do {
if (T[i]==T[j]) then
tousDistincts=false
exit //quitter la fonction
--Pouet--
Messages postés
45
Date d'inscription
mercredi 7 avril 2010
Statut
Membre
Dernière intervention
10 décembre 2011
9
9 avril 2010 à 12:23
9 avril 2010 à 12:23
Pour le coté récursif, je me lance :)
int i,j
boolean tousDistincts=true
for(i de 1 à n)
fonction tester(int i, int j)
if(T[i]==T[j])
tousDistincts==false
else
tester(i,j+1)
end
endfunction
end
int i,j
boolean tousDistincts=true
for(i de 1 à n)
fonction tester(int i, int j)
if(T[i]==T[j])
tousDistincts==false
else
tester(i,j+1)
end
endfunction
end
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
--Pouet--
Messages postés
45
Date d'inscription
mercredi 7 avril 2010
Statut
Membre
Dernière intervention
10 décembre 2011
9
9 avril 2010 à 12:23
9 avril 2010 à 12:23
C'est bidon mais dis moi ce que tu avais imaginé :)