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 Implement the Alexander Bogomolny’s UnOrdered Permutation Algorithm for Elements Fro...
Java Program to implement Bit Matrix
Hướng dẫn Java Design Pattern – Singleton
Optional trong Java 8
Java Byte Array to InputStream
Retrieve User Information in Spring Security
Java Program to Apply DFS to Perform the Topological Sorting of a Directed Acyclic Graph
Giới thiệu Google Guice – Dependency injection (DI) framework
Introduction to Spring Method Security
Send an email with an attachment
Merging Two Maps with Java 8
Tránh lỗi ConcurrentModificationException trong Java như thế nào?
Creating Docker Images with Spring Boot
HttpClient 4 Cookbook
Tránh lỗi ConcurrentModificationException trong Java như thế nào?
Java Program to Implement Hash Tables chaining with Singly Linked Lists
Java Program to Implement Sieve Of Eratosthenes
Toán tử trong java
Java Program to Implement Queue
Java Program to Implement Direct Addressing Tables
A Guide To UDP In Java
Spring Boot - Rest Template
Jackson – JsonMappingException (No serializer found for class)
Java Program to Describe the Representation of Graph using Incidence Matrix
Java Program to Implement Hash Tables with Linear Probing
A Guide to Spring Boot Admin
Java Program to Implement Sparse Matrix
Java Program to Implement Quick Sort Using Randomization
Spring REST API with Protocol Buffers
Java program to Implement Tree Set
Spring Boot with Multiple SQL Import Files
RegEx for matching Date Pattern in Java