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:

Spring Boot - Creating Docker Image
Convert String to Byte Array and Reverse in Java
Receive email using POP3
Java Program to Implement Attribute API
Java Program to Perform Searching in a 2-Dimension K-D Tree
Java Program to Construct a Random Graph by the Method of Random Edge Selection
Tiêu chuẩn coding trong Java (Coding Standards)
Java Program to Implement Solovay Strassen Primality Test Algorithm
Java Program to Implement Circular Singly Linked List
Giới thiệu Swagger – Công cụ document cho RESTfull APIs
Java Program to Find the Longest Subsequence Common to All Sequences in a Set of Sequences
Java Program to Implement Cartesian Tree
Java Program to Check if a Given Binary Tree is an AVL Tree or Not
Java Program to Perform Arithmetic Operations on Numbers of Size
Java 8 Stream API Analogies in Kotlin
Java – Write an InputStream to a File
Batch Processing with Spring Cloud Data Flow
Guava – Join and Split Collections
Lớp Collectors trong Java 8
Java Program to Construct an Expression Tree for an Infix Expression
Comparing Long Values in Java
Assertions in JUnit 4 and JUnit 5
Java 9 Stream API Improvements
A Guide to HashSet in Java
Java Program to Perform Partial Key Search in a K-D Tree
Java Program to Implement Graham Scan Algorithm to Find the Convex Hull
Java Program to Implement the Bin Packing Algorithm
Getting Started with Custom Deserialization in Jackson
Java Program to Check Whether a Given Point is in a Given Polygon
Finding the Differences Between Two Lists in Java
Java String Conversions
Java Switch Statement