データを並べ替えるためのクイック ソート アルゴリズムを Java で作成する

WBOY
リリース: 2024-02-25 19:48:07
オリジナル
664 人が閲覧しました

データを並べ替えるためのクイック ソート アルゴリズムを Java で作成する

Java でデータを並べ替えるためのクイック ソート関数を呼び出す方法には、特定のコード例が必要です。

クイック ソートは、大規模なデータを処理するときに一般的に使用される並べ替えアルゴリズムです。効率。 Java のクイック ソート関数を呼び出してデータを並べ替えることは、再帰的に実装できます。以下では、Java でクイックソートを実行する方法と具体的なコード例を詳しく紹介します。

まず、クイック ソートの原理を理解する必要があります。クイック ソートの基本的な考え方は、ベンチマーク要素を選択し、1 回のソート パスでソート対象のシーケンスを 2 つの部分に分割することです。一方の部分の要素はベンチマーク要素より小さく、もう一方の部分の要素は大きくなります。ベンチマーク要素よりも。次に、シーケンス全体がソートされるまで、2 つの部分が再帰的にソートされます。

次は、Java でのクイック ソート コードの例です。

public class QuickSort {
    public void quickSort(int[] arr, int low, int high) {
        if (low < high) {
            int pi = partition(arr, low, high);
            quickSort(arr, low, pi - 1);
            quickSort(arr, pi + 1, high);
        }
    }

    public int partition(int[] arr, int low, int high) {
        int pivot = arr[high];
        int i = (low - 1);
        for (int j = low; j < high; j++) {
            if (arr[j] < pivot) {
                i++;

                int temp = arr[i];
                arr[i] = arr[j];
                arr[j] = temp;
            }
        }

        int temp = arr[i + 1];
        arr[i + 1] = arr[high];
        arr[high] = temp;

        return i + 1;
    }

    public static void main(String[] args) {
        int[] arr = {10, 7, 8, 9, 1, 5};
        int n = arr.length;

        QuickSort sorter = new QuickSort();
        sorter.quickSort(arr, 0, n - 1);

        System.out.println("排好序的数组:");
        for (int i : arr) {
            System.out.print(i + " ");
        }
    }
}
ログイン後にコピー

上の例では、まず QuickSort クラスを定義し、その中で QuickSort メソッドとパーティション メソッドを宣言します。クイック ソート メソッド QuickSort は、再帰的メソッドを使用して、partition メソッドを呼び出して配列を 2 つの部分に分割し、配列全体が並べ替えられるまで 2 つの部分に対して再帰的に QuickSort メソッドを呼び出し続けます。パーティション方式は、ベース要素を決定し、ベース要素より小さい要素をベース要素の左側に配置し、ベース要素より大きい要素をベース要素の右側に配置するために使用されます。

main メソッドでは、いくつかの未ソート要素を含む配列 arr を作成し、それをソートのために QuickSort メソッドに渡します。最後に、ループを使用してソートされた配列を出力します。

上記のコード例を通じて、Java のクイック ソート関数を呼び出してデータを並べ替えることができます。この例を変更および調整して、実際のニーズに基づいてより複雑な並べ替え機能を実装できます。この記事がお役に立てば幸いです!

以上がデータを並べ替えるためのクイック ソート アルゴリズムを Java で作成するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート