之六 用递归的方法判断数组是否为升序

这个题也是在笔试赶集网时碰到的,好像前一段时间笔试绿盟科技的时候也有这道题

 1 bool func(int arr[], int n)
 2 {
 3     if (1 == n)
 4         return true;
 5     if (2 == n)
 6     {
 7         return arr[n] >= arr[n-1];    
 8     }    
 9     return func(arr, n-1) && arr[n] >= arr[n-1];
10 }

测试一下:

1 int main(int argc, char *argv[])
2 {
3     int array[10] = {1,2,3,4,5,6,7,8,9,10};
4     int array1[10] = {10,9,8,7,6,5,4,3,2,1};
5     cout << func(array, 10) << endl;
6     cout << func(array1, 10) << endl;
7     system("PAUSE");
8     return EXIT_SUCCESS;
9 }

 

posted on 2012-11-18 22:04  乐则行之  阅读(237)  评论(0)    收藏  举报

导航