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:
Spring Security – Reset Your Password
Hướng dẫn Java Design Pattern – Bridge
Spring Boot - Building RESTful Web Services
An Introduction to Java.util.Hashtable Class
Java Program to Use rand and srand Functions
Reversing a Linked List in Java
Cơ chế Upcasting và Downcasting trong java
How to Set TLS Version in Apache HttpClient
Giới thiệu Google Guice – Aspect Oriented Programming (AOP)
Java Program to Implement Hash Tables with Linear Probing
Java Program to Implement Knight’s Tour Problem
Test a REST API with Java
Java Program to Check the Connectivity of Graph Using DFS
Java Program to Implement Miller Rabin Primality Test Algorithm
Java – InputStream to Reader
A Guide to the finalize Method in Java
Intersection of Two Lists in Java
Java Program to Search Number Using Divide and Conquer with the Aid of Fibonacci Numbers
Java Program for Topological Sorting in Graphs
Configuring a DataSource Programmatically in Spring Boot
Converting Iterator to List
Marker Interface trong Java
Introduction to Spring Boot CLI
Java Program to Implement RoleUnresolvedList API
Getting Started with Stream Processing with Spring Cloud Data Flow
Quick Guide to java.lang.System
Java Program to Implement Range Tree
Adding a Newline Character to a String in Java
Explain about URL and HTTPS protocol
Count Occurrences of a Char in a String
Upload and Display Excel Files with Spring MVC
Java Program to Describe the Representation of Graph using Incidence Matrix