This is a java program to sort the numbers using the Bucket Sort Technique. The algorithm allocates the number of memory locations equal to maximum number and initializes all to zero, then each location is incremented as the numbers appears. The time complexity of the algorithm is O(n).
Here is the source code of the Java Program to Implement Bucket 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 numbers using bucket sort
import java.util.Random;
public class Bucket_Sort
{
static int[] sort(int[] sequence, int maxValue)
{
// Bucket Sort
int[] Bucket = new int[maxValue + 1];
int[] sorted_sequence = new int[sequence.length];
for (int i = 0; i < sequence.length; i++)
Bucket[sequence[i]]++;
int outPos = 0;
for (int i = 0; i < Bucket.length; i++)
for (int j = 0; j < Bucket[i]; j++)
sorted_sequence[outPos++] = i;
return sorted_sequence;
}
static void printSequence(int[] sorted_sequence)
{
for (int i = 0; i < sorted_sequence.length; i++)
System.out.print(sorted_sequence[i] + " ");
}
static int maxValue(int[] sequence)
{
int maxValue = 0;
for (int i = 0; i < sequence.length; i++)
if (sequence[i] > maxValue)
maxValue = sequence[i];
return maxValue;
}
public static void main(String args[])
{
System.out
.println("Sorting of randomly generated numbers using BUCKET 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));
int maxValue = maxValue(sequence);
System.out.println("\nOriginal Sequence: ");
printSequence(sequence);
System.out.println("\nSorted Sequence: ");
printSequence(sort(sequence, maxValue));
}
}
Output:
$ javac Bucket_Sort.java $ java Bucket_Sort Sorting of randomly generated numbers using BUCKET SORT Original Sequence: 95 9 95 87 8 81 18 54 57 53 92 15 38 24 8 56 29 69 64 66 Sorted Sequence: 8 8 9 15 18 24 29 38 53 54 56 57 64 66 69 81 87 92 95 95
Related posts:
Java Program to Solve the 0-1 Knapsack Problem
Quick Guide to Spring Controllers
Java Program to Implement Hopcroft Algorithm
Guide to Java 8 groupingBy Collector
Transaction Propagation and Isolation in Spring @Transactional
Java Program to Implement Gauss Jordan Elimination
Java – Rename or Move a File
Spring Boot Actuator
Java Web Services – JAX-WS – SOAP
Guide to System.gc()
Check If a String Is Numeric in Java
Guide to Java 8’s Collectors
Java Program to Apply DFS to Perform the Topological Sorting of a Directed Acyclic Graph
Spring NoSuchBeanDefinitionException
Java Program to Implement Hash Tables Chaining with List Heads
Serialization và Deserialization trong java
Java Program to Implement SimpeBindings API
Java Program to Implement Bit Array
How to Kill a Java Thread
New in Spring Security OAuth2 – Verify Claims
Java List UnsupportedOperationException
Java Program to Implement Attribute API
Java Program to do a Breadth First Search/Traversal on a graph non-recursively
Giới thiệu SOAP UI và thực hiện test Web Service
Introduction to Netflix Archaius with Spring Cloud
Using the Not Operator in If Conditions in Java
What is a POJO Class?
Spring Boot - Unit Test Cases
HttpClient 4 – Send Custom Cookie
Java Program to Implement Find all Back Edges in a Graph
Explain about URL and HTTPS protocol
Supplier trong Java 8