0
点赞
收藏
分享

微信扫一扫

STL函数next_permutation()

余寿 2022-03-30 阅读 72
c++c语言

next_permutation()

作用:

按照字典序返回组合所有字符的排列组合。


函数原型:

(1) bool next_permutation(BidirectionalIterator first,BidirectionalIterator last);
(2) bool next_permutation(BidirectionalIterator first,BidirectionalIterator last,Compare comp);

返回值:

如果没有下一个排列组合,返回false,否则返回true。每执行next_permutation()一次,就会把新的排列放到原来的空间里。


复杂度:

O(n)


排列范围:

[first,last),左开右闭。


求全排序:

以vector< int > a 为例:

vector<int> a;
sort(a.begin(),a.end());
do
}
	for(int i = 0;i<a.size();i++)
		cout<<a[i];
}while(next_permutation(a.begin(),a.end()));

举报

相关推荐

0 条评论