请问next_permutation()的时间复杂度是多少了

P1406 方格填数

....
by 会宁狐狸 @ 2020-10-07 21:28:49


$n! \times n$ 吧。
by 1saunoya @ 2020-10-07 21:33:19


@[ez_lcw](/user/118318) 可以去看一下源代码吧…这个实现我觉得是 $n ! \times n$ 的。
by 1saunoya @ 2020-10-07 21:33:51


@[Isaunoya](/user/96580) 我傻了
by ez_lcw @ 2020-10-07 21:35:38


@[会宁狐狸](/user/133677) 单次 $O(N)$,均摊 $O(1)$。
by yummy @ 2020-10-07 21:35:50


@[会宁狐狸](/user/133677) 我本地测的 0.01511s,你看看是不是你写错了: ```cpp #include<bits/stdc++.h> #define N 100 using namespace std; int n=9,a[N]; int main() { for(int i=1;i<=n;i++) a[i]=i; while(next_permutation(a+1,a+n+1)); return 0; } ```
by ez_lcw @ 2020-10-07 21:36:25


多谢了 应该是我打错了....重打之后t了一个点... 但是话说,负数和正数的字典序要怎么比较....
by 会宁狐狸 @ 2020-10-08 17:02:56


@[会宁狐狸](/user/133677) 应该就是数值从小到大
by Shiota_Kaede @ 2021-07-12 10:42:20


|