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:
Java Program to Check whether Undirected Graph is Connected using BFS
Java Program to Construct an Expression Tree for an Postfix Expression
Basic Authentication with the RestTemplate
Chuyển đổi giữa các kiểu dữ liệu trong Java
Spring Boot - Application Properties
Spring Data Java 8 Support
Java Program to Find Strongly Connected Components in Graphs
Using Java Assertions
Java Program to Implement Stack API
Spring Boot - Cloud Configuration Client
Spring Cloud – Bootstrapping
Java Program to Implement ScapeGoat Tree
Java InputStream to String
Pagination and Sorting using Spring Data JPA
Jackson – Decide What Fields Get Serialized/Deserialized
Java Program to Describe the Representation of Graph using Incidence List
Java Program to Implement Trie
Arrays.asList vs new ArrayList(Arrays.asList())
Java Program to Check whether Directed Graph is Connected using BFS
Logout in an OAuth Secured Application
Java Copy Constructor
Java Program to Implement Adjacency Matrix
New in Spring Security OAuth2 – Verify Claims
Java Program to Create a Balanced Binary Tree of the Incoming Data
Spring Security Login Page with React
Java Program to Check whether Graph is Biconnected
Quick Guide to the Java StringTokenizer
Quick Guide to Spring Bean Scopes
Java Program to Find Minimum Element in an Array using Linear Search
Java Program to Delete a Particular Node in a Tree Without Using Recursion
Using a Spring Cloud App Starter
Java Program to Implement Hash Tables with Linear Probing