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:
Spring Boot - File Handling
Mệnh đề if-else trong java
Guava CharMatcher
Inheritance and Composition (Is-a vs Has-a relationship) in Java
Giới thiệu SOAP UI và thực hiện test Web Service
A Guide to Spring Cloud Netflix – Hystrix
Java Program to Implement Treap
Spring Security 5 – OAuth2 Login
HandlerAdapters in Spring MVC
Consumer trong Java 8
HttpClient Basic Authentication
Giới thiệu JDBC Connection Pool
Debugging Reactive Streams in Java
HttpClient Connection Management
Convert Character Array to String in Java
Jackson – Bidirectional Relationships
Java Program to Implement Network Flow Problem
So sánh HashMap và Hashtable trong Java
An Intro to Spring Cloud Vault
Java Program to Find ith Largest Number from a Given List Using Order-Statistic Algorithm
Spring Security Remember Me
Converting Between a List and a Set in Java
Java Program to Create a Random Linear Extension for a DAG
Guide to the Java Clock Class
JUnit5 Programmatic Extension Registration with @RegisterExtension
Predicate trong Java 8
Java List UnsupportedOperationException
Java Program to Implement RoleUnresolvedList API
Java Program to Construct an Expression Tree for an Postfix Expression
Jackson – JsonMappingException (No serializer found for class)
Stack Memory and Heap Space in Java
Shuffling Collections In Java