c++ list.sort如何實(shí)現(xiàn)穩(wěn)定排序

c++
小樊
81
2024-09-27 17:13:41

在C++中,std::list::sort默認(rèn)就是穩(wěn)定排序。穩(wěn)定排序是指在排序過程中,如果兩個(gè)元素相等,它們?cè)瓉淼南鄬?duì)順序?qū)⒈3植蛔儭?/p>

下面是一個(gè)使用std::list::sort進(jìn)行穩(wěn)定排序的例子:

#include <iostream>
#include <list>
#include <algorithm>

int main() {
    std::list<int> my_list = {4, 2, 5, 1, 3};

    // 使用std::list::sort進(jìn)行排序
    my_list.sort();

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

    return 0;
}

在這個(gè)例子中,std::list::sortmy_list中的元素按照升序排列。由于std::list::sort是穩(wěn)定排序,所以相等的元素(在這個(gè)例子中是2和3)原來的相對(duì)順序?qū)⒈3植蛔?。輸出結(jié)果為1 2 3 4 5。

0