Program to Find Maximum Number From Array Using Recursion
- Write a program to Find Maximum Number From Array Using Recursion in C
- Write a program to Find Maximum Number From Array Using Recursion in C++
- Write a program to Find Maximum Number From Array Using Recursion in Python
- Write a program to Find Maximum Number From Array Using Recursion in PHP
- Write a program to Find Maximum Number From Array Using Recursion in Java
- Write a program to Find Maximum Number From Array Using Recursion in Java Script
- Write a program to Find Maximum Number From Array Using Recursion in C#
Explanation:
The idea behind using recursion to discover the greatest number in an array is to divide the problem into smaller subproblems, compare each array element one at a time, and then calculate the maximum of the remaining components.
Logic to Find Maximum Using Recursion
- Base Case:
- If the array has only one element, return that element as the maximum.
- Recursive Case:
- Compare the first element of the array with the maximum of the remaining elements of the array.
- The result will be the larger of the two.
Recursive Algorithm:
- Define a function find_max(array, n) where:
- array is the array of numbers.
- n is the size of the array or the current index being processed.
- Base Case:
- If n == 1, return array[0].
- Recursive Case:
- Recursively find the maximum of the remaining array: max_in_rest = find_max(array, n – 1)
- Compare the last element (array[n – 1]) with max_in_rest.
- Return the larger value: return max(array[n – 1], max_in_rest).
Program to Find Maximum Number From Array Using Recursion
-
C
-
C++
-
Python
-
PHP
-
JAVA
-
Java Script
-
C#
#include <stdio.h>
int findMax(int arr[], int n) {
if (n == 1) {
return arr[0];
}
int max = findMax(arr, n - 1);
return (arr[n - 1] > max) ? arr[n - 1] : max;
}
int main() {
int arr[] = {1, 5, 3, 19, 8};
int n = sizeof(arr) / sizeof(arr[0]);
printf("Maximum number = %d\n", findMax(arr, n));
return 0;
}
#include <iostream>
using namespace std;
int findMax(int arr[], int n) {
if (n == 1) {
return arr[0];
}
int max = findMax(arr, n - 1);
return (arr[n - 1] > max) ? arr[n - 1] : max;
}
int main() {
int arr[] = {1, 5, 3, 19, 8};
int n = sizeof(arr) / sizeof(arr[0]);
cout << "Maximum number = " << findMax(arr, n) << endl;
return 0;
}
def find_max(arr, n):
if n == 1:
return arr[0]
max_val = find_max(arr, n - 1)
return max(arr[n - 1], max_val)
arr = [1, 5, 3, 19, 8]
print("Maximum number =", find_max(arr, len(arr)))
<div class="contain-inline-size rounded-md border-[0.5px] border-token-border-medium relative bg-token-sidebar-surface-primary dark:bg-gray-950"><div class="overflow-y-auto p-4" dir="ltr"><code class="!whitespace-pre hljs language-php"><?php
function findMax($arr, $n) {
if ($n == 1) {
return $arr[0];
}
$max = findMax($arr, $n - 1);
return ($arr[$n - 1] > $max) ? $arr[$n - 1] : $max;
}
$arr = array(1, 5, 3, 19, 8);
$n = count($arr);
echo "Maximum number = " . findMax($arr, $n) . "\n";
?>
public class Main {
public static int findMax(int[] arr, int n) {
if (n == 1) {
return arr[0];
}
int max = findMax(arr, n - 1);
return (arr[n - 1] > max) ? arr[n - 1] : max;
}
public static void main(String[] args) {
int[] arr = {1, 5, 3, 19, 8};
System.out.println("Maximum number = " + findMax(arr, arr.length));
}
}
function findMax(arr, n) {
if (n === 1) {
return arr[0];
}
let max = findMax(arr, n - 1);
return arr[n - 1] > max ? arr[n - 1] : max;
}
const arr = [1, 5, 3, 19, 8];
console.log("Maximum number =", findMax(arr, arr.length));
using System;
class Program {
static int FindMax(int[] arr, int n) {
if (n == 1) {
return arr[0];
}
int max = FindMax(arr, n - 1);
return arr[n - 1] > max ? arr[n - 1] : max;
}
static void Main() {
int[] arr = {1, 5, 3, 19, 8};
Console.WriteLine("Maximum number = " + FindMax(arr, arr.Length));
}
}