This is a java program to search sequence using binary search. This is a simple extension of binary search algorithm to find an element.
Here is the source code of the Java Program to Implement a Binary Search Algorithm for a Specific Search Sequence. The Java program is successfully compiled and run on a Windows system. The program output is also shown below.
package com.sanfoundry.combinatorial; import java.util.Random; import java.util.Scanner; public class BinarySearchSequence { public static void searchSequence(int[] array, int[] search) { int first, last, middle; first = 0; last = array.length - 1; boolean flag = true; for (int i = 0; i < search.length; i++) { middle = (first + last) / 2; while (first <= last && flag == true) { if (array[middle] < search[i]) { first = middle + 1; } else if (array[middle] == search[i]) { System.out.println(search[i] + " found at location " + (middle + 1) + "."); first = 0; last = array.length - 1; break; } else { last = middle - 1; } middle = (first + last) / 2; } if (first > last) { System.out .println(search[i] + " is not present in the list."); flag = false; } } } public static void main(String args[]) { int c, n, search[], array[]; Scanner in = new Scanner(System.in); System.out.println("Enter number of elements: "); n = in.nextInt(); array = new int[n]; Random rand = new Random(); for (c = 0; c < n; c++) { array = rand.nextInt(100); } System.out.println("Elements: "); for (int i = 0; i < array.length; i++) { System.out.print(array[i] + " "); } System.out.println("\nEnter length of sequence to find: "); int m = in.nextInt(); search = new int[m]; System.out.println("Enter the sequence to find: "); for (int i = 0; i < m; i++) { search[i] = in.nextInt(); } searchSequence(array, search); in.close(); } }
Output:
$ javac BinarySearchSequence.java $ java BinarySearchSequence Enter number of elements: 10 Elements: 68 45 85 63 7 48 44 93 10 20 Enter length of sequence to find: 2 Enter the sequence to find: 7 48 7 found at location 5. 48 found at location 6. Enter number of elements: 10 Elements: 60 52 44 55 55 25 34 97 24 18 Enter length of sequence to find: 3 Enter the sequence to find: 2 3 4 2 is not present in the list. 3 is not present in the list. 4 is not present in the list.
Related posts:
Simple Single Sign-On with Spring Security OAuth2
Collection trong java
A Guide to LinkedHashMap in Java
OAuth 2.0 Resource Server With Spring Security 5
Java Switch Statement
Spring 5 Functional Bean Registration
Java Program to Implement Repeated Squaring Algorithm
Java Program to Implement Hash Tables Chaining with Doubly Linked Lists
Running Spring Boot Applications With Minikube
Java Program to Implement Gauss Jordan Elimination
Spring Boot - Tracing Micro Service Logs
Spring Cloud AWS – RDS
Template Engines for Spring
Java Program to Implement Booth Algorithm
Java Program to implement Bi Directional Map
Guide to Dynamic Tests in Junit 5
Spring Boot - Sending Email
A Guide to Iterator in Java
Java Program to Create a Random Linear Extension for a DAG
Java 9 Stream API Improvements
Java Multi-line String
Queue và PriorityQueue trong Java
Java Program to Implement the Program Used in grep/egrep/fgrep
Removing all Nulls from a List in Java
Java Program to Find the Shortest Path from Source Vertex to All Other Vertices in Linear Time
Injecting Prototype Beans into a Singleton Instance in Spring
Java Program to Implement Dijkstra’s Algorithm using Queue
Giới thiệu java.io.tmpdir
Java Program to Implement Bucket Sort
Xây dựng ứng dụng Client-Server với Socket trong Java
Spring Boot - Flyway Database
Spring REST API + OAuth2 + Angular