This is a Java Program to find peak element of an array. A peak element of an array is that element which is not smaller than its neighbors. Consider only one neighbour for corner elements. The time complexity of the following program is O (n).
Brute Force Algorithm is as follows :
for i in range (n) : if A[i - 1] <= A[i] >= A[i + 1] : print A[i] end if end for
Here is the source code of the Java program to find peak element of an array. The Java program is successfully compiled and run on a Windows system. The program output is also shown below.
/* * Java Program to Find the peak element of an array O(n) time (Naive Method) */ 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(); } }
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
Related posts:
Java Program to Implement Hash Tables Chaining with List Heads
Multi Dimensional ArrayList in Java
Spring Boot - File Handling
Setting the Java Version in Maven
Guide to CountDownLatch in Java
Prevent Cross-Site Scripting (XSS) in a Spring Application
JUnit5 @RunWith
Java Program to Use rand and srand Functions
Cài đặt và sử dụng Swagger UI
Java Program to Check Whether Topological Sorting can be Performed in a Graph
List Interface trong Java
Guide to Mustache with Spring Boot
Updating your Password
Đồng bộ hóa các luồng trong Java
Java – Write a Reader to File
A Guide to JUnit 5 Extensions
Hướng dẫn Java Design Pattern – Interpreter
Jackson – Marshall String to JsonNode
The Order of Tests in JUnit
Java Program to Show the Duality Transformation of Line and Point
Overview of Spring Boot Dev Tools
Wiring in Spring: @Autowired, @Resource and @Inject
Java Program to Implement Sorted Circularly Singly Linked List
Transactions with Spring and JPA
Automatic Property Expansion with Spring Boot
Java Program to Implement Flood Fill Algorithm
Performance Difference Between save() and saveAll() in Spring Data
Java Program to Implement Trie
JavaScript Array methods
Spring AMQP in Reactive Applications
Java – Create a File
Java Program to Perform Deletion in a BST