分而治之算法

来源:互联网 发布:南风知我意Ⅰ百度云 编辑:程序博客网 时间:2024/04/30 11:19
/* ============================================================================ Name        : Lesson_0705_recursion_divide.c Author      : zizhu Version     : Copyright   : Your copyright notice Description : Hello World in C, Ansi-style ============================================================================ */#include <stdio.h>#include <stdlib.h>#include <time.h>//分而治之算法,将大问题分解为小问题;只需要解决小问题即可int main(void) {puts("利用分而治之算法寻找最大数:"); /* prints Hello UPC World */int arr[20] ;srand(time(NULL));for(int i = 0;i<20;i++){arr[i] = rand() % 100;//初始化printf("%d,", arr[i]);}int Max(int arr[], int count);int max = Max(arr, 20);printf("\n最大值为:%d", max);return EXIT_SUCCESS;}int Max(int arr[], int count){if(count == 1){return arr[0];}else{int max = Max(arr, count - 1);//必须只能减一,变小一点点if(arr[count - 1] > max){return arr[count - 1];}else{return max;}}}
原创粉丝点击