1.有明确的结束递归的条件。n=0或n=1,此条件下可以直接得出结果:1;
2.要解决的问题总是可以转化为相对简单的同类型的问题。n!可转化为:n*(n-1)!,而(n-1)!是比n!稍简单的同类型问题;
3.随着问题的逐次转换,最终能达到结束递归的条件。算法中的参数n在递归过程中逐次减少,必然会达到n=0或n=1。
下面power函数就是用递归算法实现的。
1 #include <stdio.h>
2 void main()
3 {
4 long power(int n);
5 int n;
6 printf("input a inteager number:\n");
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] 下一页