C++ stable_sort()实例讲解

   2025-02-20 2950
核心提示:stable_sort()是C++标准库中的一个排序算法,它用于对容器中的元素进行排序。与其他排序算法不同的是,stable_sort()会保持相等

stable_sort()是C++标准库中的一个排序算法,它用于对容器中的元素进行排序。与其他排序算法不同的是,stable_sort()会保持相等元素的相对顺序不变。

下面是一个使用stable_sort()的简单示例,对一个包含字符串的vector进行排序:

#include <iostream>#include <vector>#include <algorithm>int main() {std::vector<std::string> fruits = {"banana", "apple", "orange", "grape", "apple"};std::cout << "Before sorting:" << std::endl;for (const auto& fruit : fruits) {std::cout << fruit << " ";}std::cout << std::endl;std::stable_sort(fruits.begin(), fruits.end());std::cout << "After sorting:" << std::endl;for (const auto& fruit : fruits) {std::cout << fruit << " ";}std::cout << std::endl;return 0;}

这个示例首先创建了一个vector fruits,其中包含了一些水果名称。然后,使用stable_sort()对fruits进行排序。排序后,打印出排序后的结果。

输出结果为:

Before sorting:banana apple orange grape appleAfter sorting:apple apple banana grape orange

可以看到,排序后的fruits按照字母顺序进行了排序,同时相等的元素(这里是"apple")的相对顺序保持不变。

这就是使用stable_sort()的一个简单示例。它适用于对容器中的元素进行排序,并且需要保持相等元素的相对顺序不变的情况。

 
 
更多>同类维修知识
推荐图文
推荐维修知识
点击排行
网站首页  |  关于我们  |  联系方式  |  用户协议  |  隐私政策  |  网站留言