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:
So sánh ArrayList và Vector trong Java
Java Program to Implement the Binary Counting Method to Generate Subsets of a Set
Java Program to Implement LinkedBlockingDeque API
Logout in an OAuth Secured Application
Convert XML to JSON Using Jackson
Java Program to Generate All Possible Combinations Out of a, b, c, d, e
Java Program to Generate Randomized Sequence of Given Range of Numbers
Java Program to Implement Rope
Hướng dẫn Java Design Pattern – Service Locator
Guide to the Fork/Join Framework in Java
Using Optional with Jackson
Java Program to Perform the Shaker Sort
Java Program to implement Bit Matrix
Java Program to Implement Range Tree
Working With Maps Using Streams
Java Program to Solve TSP Using Minimum Spanning Trees
Spring Boot Actuator
Java Program to Implement Stein GCD Algorithm
Spring WebClient Filters
Java Program to Implement Fenwick Tree
Validations for Enum Types
Dynamic Proxies in Java
Getting the Size of an Iterable in Java
Java Program to Generate All Subsets of a Given Set in the Gray Code Order
A Quick JUnit vs TestNG Comparison
JUnit 5 @Test Annotation
Spring AMQP in Reactive Applications
Java Program to Implement PriorityBlockingQueue API
Java Program to implement Associate Array
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
A Guide to LinkedHashMap in Java
Using Java Assertions