This is a java program to sort an elements in order n time. Bucket sort can be used to achieve this goal. Bucket sort is O(n) algorithm in time but takes more space, than the normal algorithms.
Here is the source code of the Java Program to Implement Sorting of Less than 100 Numbers in O(n) Complexity. 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 less than 100 in O(n) time //Bucket sort is O(n) algorithm import java.util.Random; public class Order_n_Sorting_Algorithm { 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 O(n) BUCKET SORT algorithm"); Random random = new Random(); int N = 25; 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 Order_n_Sorting_Algorithm.java $ java Order_n_Sorting_Algorithm Sorting of randomly generated numbers using O(n) BUCKET SORT algorithm Original Sequence: 43 50 28 1 80 8 77 92 55 44 15 42 47 98 44 12 78 36 73 57 86 36 11 35 51 Sorted Sequence: 1 8 11 12 15 28 35 36 36 42 43 44 44 47 50 51 55 57 73 77 78 80 86 92 98
Related posts:
Map Serialization and Deserialization with Jackson
Hamcrest Collections Cookbook
Java Program to Implement LinkedTransferQueue API
Tìm hiểu về xác thực và phân quyền trong ứng dụng
DynamoDB in a Spring Boot Application Using Spring Data
Java Program to Compute the Area of a Triangle Using Determinants
An Example of Load Balancing with Zuul and Eureka
Server-Sent Events in Spring
Java Program to Implement Triply Linked List
Java Program to Implement the Bin Packing Algorithm
Java Program to Implement Efficient O(log n) Fibonacci generator
Lớp Properties trong java
Java Program to Implement Circular Singly Linked List
Spring Boot - Introduction
Using the Not Operator in If Conditions in Java
A Guide to WatchService in Java NIO2
Java Streams vs Vavr Streams
Java Program to Give an Implementation of the Traditional Chinese Postman Problem
Java Program to Find the Median of two Sorted Arrays using Binary Search Approach
Kết hợp Java Reflection và Java Annotations
Using a List of Values in a JdbcTemplate IN Clause
Java Program to Implement SimpeBindings API
Properties with Spring and Spring Boot
Spring Boot - Quick Start
Java Program to Generate a Graph for a Given Fixed Degree Sequence
Check If a String Is Numeric in Java
Spring Boot - Twilio
Java Program to Find the Mode in a Data Set
Guide to UUID in Java
Custom JUnit 4 Test Runners
Java Program to Decode a Message Encoded Using Playfair Cipher
Spring Boot - Database Handling