c++

C++ sort()如何实现自定义排序

小樊
96
2024-07-18 14:37:28
栏目: 编程语言

要实现自定义排序,可以使用sort()函数的第三个参数,即自定义的比较函数。比较函数需要接受两个参数,表示两个元素,然后返回一个bool值,表示这两个元素的比较结果。

以下是一个示例,演示如何使用sort()函数实现自定义排序:

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

// 自定义比较函数,按照元素的绝对值大小进行排序
bool compare(int a, int b) {
    return abs(a) < abs(b);
}

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

    // 使用自定义的比较函数进行排序
    std::sort(vec.begin(), vec.end(), compare);

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

    return 0;
}

在上面的示例中,我们定义了一个compare函数,按照元素的绝对值大小进行排序。然后在sort()函数中传入这个自定义的比较函数,实现自定义排序。最后输出排序后的结果。

0
看了该问题的人还看了