This is a Java Program to find peak element of an array. A peak element of an array is that element which is greater than its neighbors. The following program uses binary search approach to find a peak element. The time complexity of the following program is O (log n).
Here is the source code of the Java program to find peak element of an array using binary search. 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 using * Binary Search approach */ import java.util.Scanner; public class PeakElement2 { 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 ]; /* Accept N elements */ System.out.println("Enter "+ N +" elements"); for (int i = 0; i < N; i++) arr[i] = scan.nextInt(); /* Find Peak Elements */ System.out.print("\nPeak Elements : "); peak(arr); System.out.println(); } public static void peak(int[] arr) { peak(arr, 0, arr.length - 1); } public static void peak (int arr[], int low, int high) { int N = arr.length; if (high - low < 2) return; int mid = (low + high) / 2; if (arr[mid] > arr[mid - 1] && arr[mid] > arr[mid + 1]) System.out.print(arr[mid] +" "); /* Recursively find other peak elements */ peak (arr, low, mid); peak (arr, mid, high); } }
Enter size of array 8 Enter 8 elements 87 63 51 25 40 24 6 1 Peak Elements : 40
Related posts:
Ignore Null Fields with Jackson
Java Program to Implement RoleUnresolvedList API
Java Program to Perform Finite State Automaton based Search
New Features in Java 14
Java Program to Implement Attribute API
Using a Spring Cloud App Starter
HashSet trong Java hoạt động như thế nào?
Java Program to Solve Travelling Salesman Problem for Unweighted Graph
Java Program to Implement a Binary Search Tree using Linked Lists
Java TreeMap vs HashMap
Spring MVC + Thymeleaf 3.0: New Features
Giới thiệu java.io.tmpdir
Predicate trong Java 8
Java Program to Generate All Possible Combinations of a Given List of Numbers
New in Spring Security OAuth2 – Verify Claims
Immutable Map Implementations in Java
Loại bỏ các phần tử trùng trong một ArrayList như thế nào trong Java 8?
Guide to java.util.concurrent.Future
JUnit 5 for Kotlin Developers
Toán tử instanceof trong java
Spring Cloud – Adding Angular
Primitive Type Streams in Java 8
A Guide to ConcurrentMap
Java Program to Implement Ternary Tree
Java – Rename or Move a File
Inject Parameters into JUnit Jupiter Unit Tests
Guide to Character Encoding
Guava CharMatcher
Java Program to Implement Segment Tree
Java – InputStream to Reader
Spring 5 WebClient
Java Program to Implement Sieve Of Sundaram