溫馨提示×

C++ next_permutation如何逆序排列

c++
小樊
107
2024-07-13 04:30:23
欄目: 編程語言

要將C++的next_permutation函數應用于逆序排列的情況,可以先將數組按照逆序排序,然后在循環調用next_permutation函數。下面是一個示例代碼:

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

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

    // 將數組按照逆序排序
    std::sort(vec.begin(), vec.end(), std::greater<int>());

    do {
        for (int num : vec) {
            std::cout << num << " ";
        }
        std::cout << std::endl;
    } while (std::prev_permutation(vec.begin(), vec.end()));

    return 0;
}

在這個示例中,我們首先將數組{3, 2, 1}按照逆序排序得到{3, 2, 1},然后在循環中調用std::prev_permutation函數來獲取數組中所有的逆序排列組合。輸出結果為:

3 2 1 
3 1 2 
2 3 1 
2 1 3 
1 3 2 
1 2 3 

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女