从一个整数序列中找出最小的元素,并用递归的方法实现
2、源码(二分序列递归)
#include <stdio.h>
2:
int n)
4: {
int val1, val2, val3;
6:
return array[0];
8:
if(n % 2 == 0)
10: {
11: val1 = getMin(array, n / 2);
12: val2 = getMin(array + n / 2, n / 2);
13:
if(val1 < val2)
return val1;
else
return val2;
18: }
19:
if(n % 2 != 0)
21: {
22: val1 = getMin(array, n / 2);
23: val2 = getMin(array + n / 2 + 1, n / 2);
24: val3 = array[n/2];
25:
if(val1 < val2)
27: {
return val1;
return val3;
30: }
else
32: {
return val2;
return val3;
35: }
36: }
37: }
38:
int main()
40: {
/*测试的数组,其中元素8为最小值*/
/*调用递归函数getMin获得最小值*/
, val);
, val);
return 0;
46: }