GeezerVisonThe World Wide Web, restored to 800 pixels of glory. |
| Home|About|Gaming cabinet|Archives|How it works|Starter sites |
GeezerVison is showing github.com — Java/Maths/FindMaxRecursion.java at master · tmluwei/Java Expand file tree/ Copy pathFindMaxRecursion.javaMore file actions 54 lines (44 loc) · 1.42 KB / Copy pathFindMaxRecursion.javaFile metadata and controls54 lines (44 loc) · 1.42 KB 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 package Maths; import java.util.Arrays; import java.util.Random; public class FindMaxRecursion { public static void main(String[] args) { Random rand = new Random(); /* rand size */ int size = rand.nextInt(100) + 1; int[] array = new int[size]; /* init array with rand numbers */ for (int i = 0; i < size; i++) { array[i] = rand.nextInt() % 100; } assert max(array, array.length) == Arrays.stream(array).max().getAsInt(); assert max(array, 0, array.length - 1) == Arrays.stream(array).max().getAsInt(); } /** * Get max of array using divide and conquer algorithm * * @param array contains elements * @param low the index of the first element * @param high the index of the last element * @return max of {@code array} */ public static int max(int[] array, int low, int high) { if (low == high) { return array[low]; // or array[high] } int mid = (low + high) >>> 1; int leftMax = max(array, low, mid); // get max in [low, mid] int rightMax = max(array, mid + 1, high); // get max in [mid+1, high] return Math.max(leftMax, rightMax); } /** * Get max of array using recursion algorithm * * @param array contains elements * @param len length of given array * @return max value of {@code array} */ public static int max(int[] array, int len) { return len == 1 ? array[0] : Math.max(max(array, len - 1), array[len - 1]); } } |
| You are visitor 01402520 — GeezerVison does not store the pages you look up. Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required. |