This is a java program to implement Shell Sort Algorithm.
Here is the source code of the Java Program to Implement Shell Sort. The Java program is successfully compiled and run on a Windows system. The program output is also shown below.
//This is a program to sort numbers using Shell Sort
import java.util.Random;
public class Shell_Sort
{
public static int N = 20;
public static int[] sequence = new int[N];
public static void shellSort()
{
int increment = sequence.length / 2;
while (increment > 0)
{
for (int i = increment; i < sequence.length; i++)
{
int j = i;
int temp = sequence[i];
while (j >= increment && sequence[j - increment] > temp)
{
sequence[j] = sequence[j - increment];
j = j - increment;
}
sequence[j] = temp;
}
if (increment == 2)
increment = 1;
else
increment *= (5.0 / 11);
}
}
static void printSequence(int[] sorted_sequence)
{
for (int i = 0; i < sorted_sequence.length; i++)
System.out.print(sorted_sequence[i] + " ");
}
public static void main(String args[])
{
System.out
.println("Sorting of randomly generated numbers using SHELL SORT");
Random random = new Random();
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: ");
shellSort();
printSequence(sequence);
}
}
Output:
$ javac Shell_Sort.java $ java Shell_Sort Sorting of randomly generated numbers using BUBBLE SORT Original Sequence: 67 57 55 13 83 80 29 89 30 46 68 71 6 12 5 3 68 8 18 6 Sorted Sequence: 3 5 6 6 8 12 13 18 29 30 46 55 57 67 68 68 71 80 83 89
Related posts:
Java Program to Implement the Edmond’s Algorithm for Maximum Cardinality Matching
Dynamic Proxies in Java
Disable DNS caching
How To Serialize and Deserialize Enums with Jackson
Java Program to Perform the Shaker Sort
Java Program to Implement Sieve Of Atkin
Java Program to Implement ArrayBlockingQueue API
Exploring the Spring 5 WebFlux URL Matching
Java Program to Implement Skip List
Java Program to Implement Range Tree
Java Program to Implement Knapsack Algorithm
Extract network card address
Spring Boot - Rest Template
Spring Security Form Login
Java Program to Implement Weight Balanced Tree
DistinctBy in the Java Stream API
HttpClient with SSL
Compact Strings in Java 9
Custom Exception trong Java
Working with Network Interfaces in Java
Spring Boot - Twilio
Java IO vs NIO
Spring Boot - Cloud Configuration Client
Java Program to Generate a Sequence of N Characters for a Given Specific Case
Generating Random Numbers in a Range in Java
Hướng dẫn Java Design Pattern – Null Object
Java – InputStream to Reader
OAuth2 for a Spring REST API – Handle the Refresh Token in Angular
Spring Boot - Enabling Swagger2
Jackson – Unmarshall to Collection/Array
Hướng dẫn tạo và sử dụng ThreadPool trong Java
ETL with Spring Cloud Data Flow