亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

c++遍歷set怎樣實現自定義排序

c++
小樊
81
2024-11-23 04:52:09
欄目: 編程語言

在C++中,你可以使用std::set容器來存儲已經按照自定義排序規則排序的元素。要實現自定義排序,你需要提供一個比較函數或者重載<運算符。下面是兩種實現自定義排序的方法:

方法1:提供比較函數

#include <iostream>
#include <set>

// 自定義排序函數
bool customCompare(int a, int b) {
    return a < b; // 從小到大排序
}

int main() {
    std::set<int, decltype(&customCompare)> mySet(customCompare);

    mySet.insert(5);
    mySet.insert(3);
    mySet.insert(8);
    mySet.insert(1);

    for (const auto& element : mySet) {
        std::cout << element << " ";
    }

    return 0;
}

方法2:重載<運算符

#include <iostream>
#include <set>

// 自定義排序類
struct CustomCompare {
    bool operator()(int a, int b) const {
        return a < b; // 從小到大排序
    }
};

int main() {
    std::set<int, CustomCompare> mySet;

    mySet.insert(5);
    mySet.insert(3);
    mySet.insert(8);
    mySet.insert(1);

    for (const auto& element : mySet) {
        std::cout << element << " ";
    }

    return 0;
}

在這兩個示例中,我們都創建了一個包含整數的std::set,并使用自定義排序規則對元素進行排序。在第一個示例中,我們提供了一個比較函數customCompare,而在第二個示例中,我們定義了一個重載了<運算符的結構體CustomCompare。在這兩種情況下,輸出結果都是按照升序排列的元素:1 3 5 8。

0
旺苍县| 青冈县| 五峰| 孙吴县| 鲜城| 富民县| 平遥县| 新郑市| 平舆县| 八宿县| 建平县| 增城市| 辛集市| 通州市| 延津县| 保康县| 綦江县| 措勤县| 石阡县| 长沙市| 奉新县| 阳城县| 奉化市| 积石山| 彩票| 桃园县| 酒泉市| 德格县| 肥东县| 乐平市| 曲麻莱县| 琼海市| 木兰县| 施甸县| 闸北区| 云阳县| 射阳县| 盐边县| 桐梓县| 高台县| 家居|