Code:
import java.util.Scanner;
public class PeakElement1
{
public static void main(String[] args)
{
Scanner scan = new Scanner(System.in);
System.out.println("Enter size of array");
int N = scan.nextInt();
int[] arr = new int[N + 2];
/* set corner values to -infinity */
arr[0] = Integer.MIN_VALUE;
arr[N + 1] = Integer.MIN_VALUE;
/* Accept N elements */
System.out.println("Enter "+ N +" elements");
for (int i = 1; i <= N; i++)
arr[i] = scan.nextInt();
/* Find All Peak Elements */
System.out.println("\nAll Peak Elements : ");
for (int i = 1; i <= N; i++)
if (arr[i - 1] <= arr[i] && arr[i] >= arr[i + 1])
System.out.println(arr[i] +" at position "+ i);
System.out.println();
}
}
Output:
Enter size of array
6
Enter 6 elements
1 2 5 5 4 1
All Peak Elements :
5 at position 3
5 at position 4
Enter size of array
7
Enter 7 elements
6 24 15 2 23 99 67
All Peak Elements :
24 at position 2
99 at position 6
Enter size of array
10
Enter 10 elements
10 9 8 24 8 7 97 28 17 63
All Peak Elements :
10 at position 1
24 at position 4
97 at position 7
63 at position 10
More Java Programs: