हम बस पहले तत्व से शुरू कर सकते हैं और पहले तत्व से पहुंचने वाले सभी तत्वों को बार-बार कॉल कर सकते हैं। पहले से अंत तक पहुंचने के लिए कूदने की न्यूनतम संख्या की गणना पहले से पहुंच योग्य तत्वों से अंत तक पहुंचने के लिए आवश्यक छलांगों की न्यूनतम संख्या का उपयोग करके की जा सकती है।
ऐरे =={1, 3, 6, 3, 2, 3, 6, 8, 9, 5};
आवश्यक चरणों की संख्या 4
. हैउदाहरण
using System; namespace ConsoleApplication{ public class Arrays{ public int MinJumps(int[] arr, int l, int h){ if (h == l) return 0; if (arr[l] == 0) return int.MaxValue; int min = int.MaxValue; for (int i = l + 1; i <= h && i <= l + arr[l]; i++){ int jumps = MinJumps(arr, i, h); if (jumps != int.MaxValue && jumps + 1 < min) min = jumps + 1; } return min; } } class Program{ static void Main(string[] args){ Arrays a = new Arrays(); int[] arrm = { 1, 3, 6, 3, 2, 3, 6, 8, 9, 5 }; int n = arrm.Length; Console.Write(" Minimum number of jumps to reach end is " + a.MinJumps(arrm, 0, n - 1)); } } }
आउटपुट
4