从一个整数序列中找出最小的元素,并用递归的方法实现

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: }

相关文章: