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:
Disable Spring Data Auto Configuration
Hướng dẫn Java Design Pattern – Command
Java Program to Implement Jarvis Algorithm
Spring JDBC
Java Program to Implement Hash Tables with Quadratic Probing
Java Program to Perform String Matching Using String Library
Java Program to Implement Interval Tree
Sending Emails with Java
Guava – Join and Split Collections
Java Program to Implement vector
Map to String Conversion in Java
Java Program to Construct an Expression Tree for an Prefix Expression
Java Program to Implement a Binary Search Algorithm for a Specific Search Sequence
Java – Convert File to InputStream
Serialize Only Fields that meet a Custom Criteria with Jackson
Java Program to Use Boruvka’s Algorithm to Find the Minimum Spanning Tree
A Guide to the finalize Method in Java
Returning Custom Status Codes from Spring Controllers
Introduction to Spring Cloud Netflix – Eureka
Spring Data JPA Delete and Relationships
Java Program to Implement Coppersmith Freivald’s Algorithm
Guide to the Java Queue Interface
Giới thiệu Google Guice – Injection, Scope
Guide to Selenium with JUnit / TestNG
Guide to the Volatile Keyword in Java
Converting Iterator to List
Java Program to Implement Patricia Trie
Array to String Conversions
Hướng dẫn sử dụng Printing Service trong Java
Java Program to Find Nearest Neighbor Using Linear Search
Java Program to Implement Pagoda
HandlerAdapters in Spring MVC