👤

Salut. Am gasit Algoritmul acesta pentru generarea permutarilor de numere consecutive de backtracking:


#include
using namespace std;

int x[10] ,n;

void Afiseaza()
{
for( int j=1;j<=n;j++)
cout< >n;
backtrack(1);
return 0;
}


Eu am inteles cum functioneaza. Vreau sa imi explice cineva ce o face sa nu se opreasca dupa prima solutie gasita. Adica dupa ce a gasit soutia [1, 2, 3] pentru n = 3. ar trebui sa iasa din for si din subprogram si ar trebui sa se opreasca, dar el continua si gaseste si alte solutii([1, 3, 2], [2, 1, 3], etc.). Este bine, dar nu inteleg unde e chestia cu revenit la pasul anterior. Nu ar trebui sa apelez undeva functia backtrack(k-1)?


Răspuns :

Vă mulțumim că ați vizitat platforma noastră dedicată Informatică. Sperăm că informațiile prezentate v-au fost utile. Dacă aveți întrebări sau aveți nevoie de suport suplimentar, vă rugăm să ne contactați. Vă așteptăm cu drag și data viitoare! Nu uitați să adăugați site-ul nostru la lista de favorite!


Ze Learners: Alte intrebari