Aide en exercice d'algorithme
nostalgieing
-
--Pouet-- Messages postés 55 Statut Membre -
--Pouet-- Messages postés 55 Statut Membre -
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
5 réponses
-
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 -
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 -
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 -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -