中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

如何通過cmp函數實現C++中的自定義排序規則

c++
小樊
82
2024-08-07 16:01:24
欄目: 編程語言

在C++中,可以通過定義一個比較函數(或者使用lambda表達式)并將其作為參數傳遞給標準庫中的排序函數來實現自定義排序規則。比較函數可以使用任何自定義的規則來決定元素的順序。

以下是一個示例,演示如何通過cmp函數實現自定義排序規則:

#include <iostream>
#include <vector>
#include <algorithm>

// 定義比較函數
bool cmp(int a, int b) {
    // 按照元素的絕對值大小進行排序
    return abs(a) < abs(b);
}

int main() {
    std::vector<int> vec = {3, -1, 2, -4, 5};

    // 使用自定義的比較函數進行排序
    std::sort(vec.begin(), vec.end(), cmp);

    // 輸出排序后的結果
    for (int num : vec) {
        std::cout << num << " ";
    }
    std::cout << std::endl;

    return 0;
}

在上面的示例中,我們定義了一個比較函數cmp,該函數根據元素的絕對值大小進行排序。然后我們將這個比較函數作為參數傳遞給std::sort函數,以便按照自定義規則對vector進行排序。最后,我們輸出排序后的結果。

通過定義不同的比較函數,可以實現各種自定義的排序規則。

0
宝丰县| 册亨县| 宜城市| 雷山县| 宁南县| 宜宾县| 奉节县| 双峰县| 商都县| 汉中市| 太湖县| 延长县| 九台市| 义马市| 临夏市| 巴东县| 吴堡县| 车险| 东至县| 德江县| 台东市| 青浦区| 通许县| 内黄县| 东宁县| 富阳市| 五大连池市| 芮城县| 宣化县| 裕民县| 巴中市| 新兴县| 修武县| 威宁| 九寨沟县| 玉树县| 湘乡市| 丹东市| 南木林县| 佛山市| 金平|