C#遞歸函數(shù)應(yīng)用實例解析
作者:xfantasy
C#遞歸函數(shù)應(yīng)用實例主要向你介紹了使用遞歸函數(shù)來實現(xiàn)的一個例子,希望這些對你了解和學(xué)習(xí)C#遞歸函數(shù)有所幫助。
關(guān)于C#遞歸函數(shù)的應(yīng)用問題一直是編程人員容易想到的解決辦法,C#遞歸函數(shù)的應(yīng)用理解是什么呢?那么以下是一個實例應(yīng)用,用來查找一個int數(shù)組中最大的值在屏幕中打印出來。
第一種做法,調(diào)用Math.Max的方法來比較大小。
- using System;
- class Program
- {
- static void Main()
- {
- int[] a = { 1, 210, 3, -51, 327, -58, 102300, 54343, -20, 0 };
- int max = FindMax(a, a.Length);
- Console.WriteLine("最大值: {0}", max);
- }
- static int FindMax(int[] a, int n)
- {
- if (a == null || n > a.Length || n < 1)
- throw new ArgumentException();
- if (n == 1) return a[0];
- return Math.Max(FindMax(a, n - 1), a[n - 1]);
- }
- }
第二種做法,不調(diào)用Math.Max方法。
- using System;
- class Program
- {
- static void Main()
- {
- int[] a = { 1, 210, 3, -51, 327, -58, 102300, 54343, -20, 0 };
- int max = FindMax(a, a.Length);
- Console.WriteLine("最大值: {0}", max);
- }
- static int FindMax(int[] a, int n)
- {
- if (a == null || n > a.Length || n < 1)
- throw new ArgumentException();
- if (n == 1) return a[0];
- int max = FindMax(a, n - 1);
- if (a[n - 1] > max) max = a[n - 1];
- return max;
- }
- }
關(guān)于C#遞歸函數(shù)的應(yīng)用問題的介紹就到這里,希望對你了解和學(xué)習(xí)C#遞歸函數(shù)的應(yīng)用有所幫助。
【編輯推薦】
責(zé)任編輯:仲衡
來源:
博客園