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 Hash Tables with Quadratic Probing
Java Program to Implement Gale Shapley Algorithm
Java Program to Implement Adjacency Matrix
Các kiểu dữ liệu trong java
Java Program to Implement Skew Heap
Lập trình đa luồng với Callable và Future trong Java
Upload and Display Excel Files with Spring MVC
Apache Tiles Integration with Spring MVC
Java Program to Implement LinkedBlockingDeque API
Allow user:password in URL
Java Program to Perform Preorder Recursive Traversal of a Given Binary Tree
Logout in an OAuth Secured Application
Java Program to Construct an Expression Tree for an Postfix Expression
Java Program to Generate All Possible Combinations of a Given List of Numbers
Java Program to Find Maximum Element in an Array using Binary Search
Getting the Size of an Iterable in Java
Display Auto-Configuration Report in Spring Boot
Mix plain text and HTML content in a mail
So sánh Array và ArrayList trong Java
Arrays.asList vs new ArrayList(Arrays.asList())
Spring Data MongoDB Transactions
Java Program to Implement Ford–Fulkerson Algorithm
Java – Generate Random String
ArrayList trong java
Java Program to Implement Expression Tree
Java Program to find the peak element of an array using Binary Search approach
Optional trong Java 8
Wrapper Classes in Java
Introduction to Spring Cloud CLI
Java Program to Find Path Between Two Nodes in a Graph
Java Program to Implement K Way Merge Algorithm
Java Program to implement Bit Matrix