Максимальный элемент массива через рекурсию - C#

Узнай цену своей работы

Формулировка задачи:

Написать рекурсивную функцию для вычисления индекса максимального элемента массива из n элементов.
Листинг программы
  1. class Program
  2. {
  3. static int MaxElement(int[] arr, uint size)
  4. {
  5. if (size > 1u)
  6. return Math.Max(arr[size - 1], MaxElement(arr, size - 1));
  7. return arr[0];
  8. }
  9. static void Main(string[] args)
  10. {
  11. int[] arr = { 1, 2, 3, 4, 5, 4, 3, 2, 1 };
  12. Console.WriteLine(MaxElement(arr, (uint)arr.Length));
  13. Console.ReadKey(true);
  14. }
  15. }
вот тут что значит 1u структура

Решение задачи: «Максимальный элемент массива через рекурсию»

textual
Листинг программы
  1. using System;
  2.  
  3. class Program
  4. {
  5.     public static int Maximum(int[] arr, int i = 0)
  6.     {
  7.         return i == arr.Length ? Int32.MinValue : Math.Max(arr[i], Maximum(arr, i + 1));
  8.     }
  9.  
  10.     public static void Main()
  11.     {
  12.         Console.WriteLine(Maximum(new int[] { 1, 2, 3, 4, 5, 4, 3, 2, 1 }));
  13.     }
  14. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4.214 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы