This is a java program to sort the large number of elements using Quick Sort Technique. Quick sort uses a pivot element, where all the elements less that pivot are kept in one list and all the elements greater than pivot are kept in another list, and so on.
Here is the source code of the Java Program to Perform Quick Sort on Large Number of Elements. 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 large number of element using Quick Sort
import java.util.Random;
public class Quick_Sort
{
public static int N = 25;
public static int[] sequence = new int[N];
public static void QuickSort(int left, int right)
{
if (right - left <= 0)
return;
else
{
int pivot = sequence[right];
int partition = partitionIt(left, right, pivot);
QuickSort(left, partition - 1);
QuickSort(partition + 1, right);
}
}
public static int partitionIt(int left, int right, long pivot)
{
int leftPtr = left - 1;
int rightPtr = right;
while (true)
{
while (sequence[++leftPtr] < pivot)
;
while (rightPtr > 0 && sequence[--rightPtr] > pivot)
;
if (leftPtr >= rightPtr)
break;
else
swap(leftPtr, rightPtr);
}
swap(leftPtr, right);
return leftPtr;
}
public static void swap(int dex1, int dex2)
{
int temp = sequence[dex1];
sequence[dex1] = sequence[dex2];
sequence[dex2] = temp;
}
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 QUICK 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: ");
QuickSort(0, N - 1);
printSequence(sequence);
}
}
Output:
$ javac Quick_Sort.java $ java Quick_Sort Sorting of randomly generated numbers using QUICK SORT Original Sequence: 54 22 88 52 43 84 61 75 54 72 7 42 47 15 40 16 46 28 9 48 78 10 89 95 8 Sorted Sequence: 7 8 9 10 15 16 22 28 40 42 43 46 47 48 52 54 54 61 72 75 78 84 88 89 95
Related posts:
Servlet 3 Async Support with Spring MVC and Spring Security
Apache Commons Collections MapUtils
An Intro to Spring Cloud Contract
Hướng dẫn Java Design Pattern – Proxy
Introduction to Spring Security Expressions
Spring Data JPA and Null Parameters
Tính đóng gói (Encapsulation) trong java
Java Program to Permute All Letters of an Input String
A Quick JUnit vs TestNG Comparison
Using JWT with Spring Security OAuth (legacy stack)
Java Program to Perform Searching in a 2-Dimension K-D Tree
Java Program to Implement Vector API
Request a Delivery / Read Receipt in Javamail
Java Program to Perform Naive String Matching
Explain about URL and HTTPS protocol
Java Program to Implement Sorted Array
Mệnh đề Switch-case trong java
Working with Network Interfaces in Java
Java Program to Implement Levenshtein Distance Computing Algorithm
Why String is Immutable in Java?
Java Program to Implement Slicker Algorithm that avoids Triangulation to Find Area of a Polygon
Beans and Dependency Injection
Spring Autowiring of Generic Types
Java Program to Implement Control Table
Toán tử instanceof trong java
Vấn đề Nhà sản xuất (Producer) – Người tiêu dùng (Consumer) và đồng bộ hóa các luồng trong Java
DistinctBy in the Java Stream API
Getting Started with Custom Deserialization in Jackson
Java Program to Implement Pagoda
Java Program to Solve Set Cover Problem assuming at max 2 Elements in a Subset
Transactions with Spring and JPA
Model, ModelMap, and ModelAndView in Spring MVC