This is a java program to implement Shaker Sort algorithm.
Here is the source code of the Java Program to Perform the Shaker Sort. The Java program is successfully compiled and run on a Windows system. The program output is also shown below.
//This is a java program to sort the numbers using Shaker Sort import java.util.Random; public class Shaker_Sort { public static void printSequence(int[] sorted_sequence) { for (int i = 0; i < sorted_sequence.length; i++) System.out.print(sorted_sequence[i] + " "); } public static int[] shakerSort(int[] array) { for (int i = 0; i < array.length/2; i++) { boolean swapped = false; for (int j = i; j < array.length - i - 1; j++) { if (array[j] < array[j+1]) { int tmp = array[j]; array[j] = array[j+1]; array[j+1] = tmp; } } for (int j = array.length - 2 - i; j > i; j--) { if (array[j] > array[j-1]) { int tmp = array[j]; array[j] = array[j-1]; array[j-1] = tmp; swapped = true; } } if(!swapped) break; } return array; } public static void main(String args[]) { System.out .println("Sorting of randomly generated numbers using Shaker SORT"); Random random = new Random(); int N = 20; int[] sequence = new int[N]; for (int i = 0; i < N; i++) sequence[i] = Math.abs(random.nextInt(100)); System.out.println("\nOriginal Sequence: "); printSequence(sequence); System.out.println("\nSorted Sequence: "); printSequence(shakerSort(sequence)); } }
Output:
$ javac Shaker_Sort.java $ java Shaker_Sort Sorting of randomly generated numbers using SHAKER SORT Original Sequence: 195 853 655 915 364 689 539 684 956 197 67 871 509 662 825 336 540 815 403 876 Sorted Sequence: 956 915 876 871 853 825 815 689 684 662 655 540 539 509 403 364 336 197 195 67
Related posts:
Intro to Spring Boot Starters
Giới thiệu java.io.tmpdir
Binary Numbers in Java
Java Program to Solve Set Cover Problem assuming at max 2 Elements in a Subset
Tips for dealing with HTTP-related problems
Guide to Spring Cloud Kubernetes
Java Program to Apply DFS to Perform the Topological Sorting of a Directed Acyclic Graph
Java Program to Check if a Directed Graph is a Tree or Not Using DFS
The Spring @Controller and @RestController Annotations
Java Program to Implement First Fit Decreasing for 1-D Objects and M Bins
Java Program to Generate a Sequence of N Characters for a Given Specific Case
Spring MVC Custom Validation
Java Program to subtract two large numbers using Linked Lists
Java Program to Perform the Sorting Using Counting Sort
Java Program to Implement Bellman-Ford Algorithm
Java Program to find the peak element of an array using Binary Search approach
Java Program to Implement Fenwick Tree
Spring Webflux and CORS
Java Program to Implement Hash Tables Chaining with Doubly Linked Lists
Marker Interface trong Java
Java Program to Check if a Matrix is Invertible
Spring Boot - Enabling HTTPS
Converting Strings to Enums in Java
Multipart Upload with HttpClient 4
Spring Security Remember Me
Java Program to Perform Matrix Multiplication
Java Program to Find Basis and Dimension of a Matrix
The “final” Keyword in Java
A Guide to TreeMap in Java
Deploy a Spring Boot App to Azure
Java Program to Solve Knapsack Problem Using Dynamic Programming
HttpClient Basic Authentication