Hỏi đáp
Chia sẻ kiến thức, cùng nhau phát triển
Backtracking(quay lui) hoạt động như thế nào?
18:40 09-05-2017
971 lượt xem
1 bình luận
20:16 09-05-2017
Mình có ct sau:
#include <iostream>
#include <iomanip>
using namespace std;
void Input(int &n){
cout << "Enter n: ";
cin >> n;
}
void result(int n, int a[]){
for(int i = 1; i <= n; i++){
cout << setw(5) << a[i];
}
cout << endl;
}
void Try(int n, int a[], int i){
for(int j = 0; j <= 1; j++){
a[i] = j;
if(i == n){
result(n,a);
} else{
Try(n,a,i+1);
}
}
}
int main(){
int n,a[100],i = 1;
Input(n);
Try(n,a,i);
return 0;
}
với n = 3 thì nó hoạt động như thế nào?
Cái này bạn chỉ cần đặt debug thôi là hiểu ngay.