ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Obtain the max value in array using recursive method (用递归调用的方法来求一个数组元素的最大值)

2021-11-07 15:58:32  阅读:189  来源: 互联网

标签:recursive int max Obtain value array include method


the results:

The max value in the array is: 7

The codes:

//obtain the max value from an array by recrusive method
#include <iostream>
#include <iomanip>
using namespace std;
int getMaxValue(int array[], int n);
int main()
{
    int a[] = {1,2,3,4,5,6,7};
    cout << "The max value in the array is: " << getMaxValue(a, 7) << endl;
    return 0;
}
int getMaxValue(int array[], int n)
{
    if (n == 0){
        return array[0]; 
    }
    return max(array[n-1], getMaxValue(array, n-1));
}
PS C:\Users\Desktop\C++\FirstProgram> .\practice.exe
6
The max value in the array is: 20
The elements in array
 14 20 13  2  5 13

The corresponding codes:

//obtain the max value from an array by recrusive method
#include <iostream>
#include <iomanip>
#include <ctime>
#include <cstdlib>
using namespace std;
int getMaxValue(int array[], int n);
void generate_array(int* &array, int n); //The reference function could help transfer argument 
void display_array(int array[], int n); 
int main()
{
    srand((unsigned)time(NULL));
    int n;
    cin >> n;
    int* a;
    generate_array(a, n);
    cout << "The max value in the array is: " << getMaxValue(a, n) << endl;
    display_array(a, n);
    free(a);
    return 0;
}
int getMaxValue(int array[], int n)
{
    if (n == 0){
        return array[0]; 
    }
    return max(array[n-1], getMaxValue(array, n-1));
}
void generate_array(int* &array, int n)
{
    array = new int[n];
    for(int i = 0; i < n; i++){
        array[i] = rand() % 20 +1;
    }
}
void display_array(int array[], int n)
{
    cout << "The elements in array" << endl;
    for(int i = 0; i < n; i++){
        cout << setw(3) << array[i];
    }
}

标签:recursive,int,max,Obtain,value,array,include,method
来源: https://blog.csdn.net/weixin_38396940/article/details/121192286

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有