Java Program to Perform Quick Sort on Large Number of Elements

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:

Java Program to Implement Stack API
Guide to Java OutputStream
Java Program to Implement Depth-limited Search
Hướng dẫn sử dụng luồng vào ra nhị phân trong Java
Java Program to Implement the Schonhage-Strassen Algorithm for Multiplication of Two Numbers
Tránh lỗi ConcurrentModificationException trong Java như thế nào?
Creating a Generic Array in Java
The “final” Keyword in Java
Mapping Nested Values with Jackson
DynamoDB in a Spring Boot Application Using Spring Data
Xử lý ngoại lệ đối với trường hợp ghi đè phương thức trong java
List Interface trong Java
Java Program to Generate All Subsets of a Given Set in the Lexico Graphic Order
Lớp HashMap trong Java
Guide to CountDownLatch in Java
TreeSet và sử dụng Comparable, Comparator trong java
Chuyển đổi từ HashMap sang ArrayList
Error Handling for REST with Spring
Java Program to Implement a Binary Search Algorithm for a Specific Search Sequence
The Spring @Controller and @RestController Annotations
Java Program to Generate Random Partition out of a Given Set of Numbers or Characters
Java Program to Implement WeakHashMap API
Getting the Size of an Iterable in Java
Java Program to Perform Insertion in a BST
Jackson – Change Name of Field
LinkedHashSet trong java
HashSet trong java
Java Program to Implement Graham Scan Algorithm to Find the Convex Hull
Java Program to Implement Suffix Array
Java Program to Implement Ternary Tree
Java Program to Find kth Smallest Element by the Method of Partitioning the Array
Java Program to Use the Bellman-Ford Algorithm to Find the Shortest Path