Максимальный элемент массива через рекурсию - C#
Формулировка задачи:
Написать рекурсивную функцию для вычисления индекса максимального элемента массива из n элементов.
вот тут что значит 1u структура
class Program
{
static int MaxElement(int[] arr, uint size)
{
if (size > 1u)
return Math.Max(arr[size - 1], MaxElement(arr, size - 1));
return arr[0];
}
static void Main(string[] args)
{
int[] arr = { 1, 2, 3, 4, 5, 4, 3, 2, 1 };
Console.WriteLine(MaxElement(arr, (uint)arr.Length));
Console.ReadKey(true);
}
}Решение задачи: «Максимальный элемент массива через рекурсию»
textual
Листинг программы
using System;
class Program
{
public static int Maximum(int[] arr, int i = 0)
{
return i == arr.Length ? Int32.MinValue : Math.Max(arr[i], Maximum(arr, i + 1));
}
public static void Main()
{
Console.WriteLine(Maximum(new int[] { 1, 2, 3, 4, 5, 4, 3, 2, 1 }));
}
}