next_permutation和prev_permutation是C++標準庫
next_permutation函數可以生成給定序列的下一個排列,即按照字典序排列中的下一個排列。如果當前排列是遞增順序的最后一個排列,則next_permutation會重新排列序列為遞增順序的第一個排列,并返回false;如果成功生成了下一個排列,則返回true。
prev_permutation函數則是生成給定序列的上一個排列,即按照字典序排列中的前一個排列。如果當前排列是遞增順序的第一個排列,則prev_permutation會重新排列序列為遞增順序的最后一個排列,并返回false;如果成功生成了上一個排列,則返回true。
這兩個函數都是在原序列上進行操作,并且要求序列中的元素是可比較的,并且支持交換操作。使用這兩個函數時需要包含