首頁 >後端開發 >C++ >C++sort函數詳解與範例演示

C++sort函數詳解與範例演示

PHPz
PHPz原創
2024-04-02 18:39:011339瀏覽

摘要:C sort 函數用於對容器元素進行排序。預設情況下,它使用

C++sort函數詳解與範例演示

C 排序函數詳解與範例示範

sort 函數概述

sort函數是C 標準範本庫(STL) 中一個強大的函數,用於對容器元素進行排序。它根據指定的比較規則將容器中的元素排列成升序或降序。

函數宣告如下:

template<typename Iter>
void sort(Iter first, Iter last);

其中:

  • #Iter:指向容器元素的迭代器類型,可以在容器中移動和訪問元素。
  • first:容器開始迭代器,指定要排序元素的範圍的第一個元素。
  • last:容器結束迭代器,指定要排序元素的範圍的最後一個元素之後的元素。

自訂比較規則

預設情況下,sort 函數使用 運算子進行比較,這表示它將容器元素按升序排列。如果您希望根據不同的規則排序,可以提供一個自訂比較函數:

bool compare(const Type1& a, const Type2& b)
{
    // 自定义比较规则
}

// 在 sort 函数中使用自定义比较函数
sort(first, last, compare);

實戰案例

範例1:對整數陣列排序

#include <iostream>
#include <algorithm>

using namespace std;

int main()
{
    int arr[] = {5, 2, 7, 1, 3};
    int len = sizeof(arr) / sizeof(arr[0]);

    sort(arr, arr + len);

    cout << "排序后的数组:";
    for (int i = 0; i < len; i++)
    {
        cout << " " << arr[i];
    }
    cout << endl;

    return 0;
}

輸出:

排序后的数组: 1 2 3 5 7

#範例2:對字串陣列排序

#include <iostream>
#include <algorithm>

using namespace std;

int main()
{
    string arr[] = {"apple", "orange", "banana", "kiwi", "mango"};
    int len = sizeof(arr) / sizeof(arr[0]);

    sort(arr, arr + len);

    cout << "排序后的数组:";
    for (int i = 0; i < len; i++)
    {
        cout << " " << arr[i];
    }
    cout << endl;

    return 0;
}

輸出:

排序后的数组: apple banana kiwi mango orange

以上是C++sort函數詳解與範例演示的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn