作者oldkai ( )
看板C_and_CPP
標題Re: [問題] c++遞迴
時間Sun Oct 7 03:04:06 2007
我直接copy你的題目google,照著看到的演算法寫的
#include <iostream>
int a[100];
int length;
void print_array(int* a){
int i;
for(i=0;i<length;i++) {printf("%d",a[length-1-i]);}
printf("\n");
}
void write_binary(int N){
if (N>=0) {
a[N] = 0;
write_binary(N-1);
a[N] = 1;
write_binary(N-1);
}
else print_array(a);
}
int main(){
printf("input binary string length:");
scanf("%d",&length);
write_binary(length-1);
system("pause");
return 0;
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.193.10.86
推 dh3014:其實不用遞迴 binary addition is enough 10/07 06:26
推 infant00:感謝原PO 10/07 08:33
推 infant00:這解法我看過 不過他寫的超級亂 你寫的好淺顯易懂 10/07 08:38
推 x8:我也google過 淺顯易懂! 10/07 13:58
推 infant00:原來是學長 學長好!!! 10/07 19:36