之六 用递归的方法判断数组是否为升序
这个题也是在笔试赶集网时碰到的,好像前一段时间笔试绿盟科技的时候也有这道题
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 }

浙公网安备 33010602011771号