In this post, we are going to see how to find the largest number in an Array using core Java program.
So, here is the complete program for you (JavaLargestInArray.java):
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 |
/** * @author agur * Find Largest value in an array */ public class JavaLargestInArray { public static void main(String[] args) { //declare an integer array int arr[] = {10, 20, 101, 122, 1, 5, 12}; int temp, total, largest; //find the total length of an array total = arr.length; //we have arr[0] to arr[6], check against each and find the largest for (int i = 0; i < total; i++) { for (int j = i + 1; j < total; j++) { /** * eg. if the array value of arr[0] is greater than arr[1] then allow * otherwise just loop till find the largest value * the below code will bring the largest value to the end of array - arr[6] * */ if (arr[i] > arr[j]) { temp = arr[i]; arr[i] = arr[j]; arr[j] = temp; } } } //set the largest value largest = arr[total - 1]; System.out.println("Largest number: "+largest); } } |
The output of the above program is:
1 2 3 4 |
run: Largest number: 122 BUILD SUCCESSFUL (total time: 0 seconds) |
Please go through inline comments in the above program to understand it. But the basic idea is, we are swapping the array values each time when there is a large number.
Here is a detailed explanation of the above program about the swapping,
//this is our array and the array length is 7
int arr[] = {10, 20, 101, 122, 1, 5, 12};
Let’s see the loop and if condition:
- if (a[0] > a[1]) ie., if (10 > 20) – is false, so nothing happens here
- if (a[1] > a[2]) ie., if (20 > 101) – is false, so nothing happens here
- if (a[2] > a[3]) ie., if (101 > 122) – is false, so nothing happens here
- if (a[3] > a[4]) ie., if (122 > 1) – is true, now the swap happens here
- let’s swap, a[3] = 1, a[4] = 122
- if (a[4] > a[5]) ie., if (122 > 5) – is true again, so again swap the value
- a[4] = 5, a[5] = 122
- if (a[5] > a[6]) ie., if (122 > 12) – is true again, so again swap the value
- a[5] = 5, a[6] = 122
So, the largest number is at the end of the array arr[6] = 122. That’s the value we are printing at the end.