全排列

发布时间:2016-12-19 12:09:38编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"全排列 ",主要涉及到全排列 方面的内容,对于全排列 感兴趣的同学可以参考一下。

[1,2,3,4]的全排列,可以看作1和[2,3,4]全排列,[1,2]和[3,4]全排列。。。。因此可以用递归解决。

在每次扩展中,将未出现的元素不断加入,且在这个过程中,不需要保存路径

void dfs_permutation(vector<int>& num,vvi& result,vi& path){    if(num.size()==path.size())//出口    {        result.push_back(path);        return;    }    for(auto i:num)    {        auto pos = find(path.begin(),path.end(),i);        if(pos==path.end())//如果该元素不在path中,加入        {            path.push_back(i);            dfs_permutation(num,result,path);            path.pop_back();//要将该元素弹出        }    }}vvi Permutation(vi num){    vvi result;    vi path;    dfs_permutation(num,result,path);    return result;}


上一篇:Java 使用jaxp添加节点
下一篇:回调函数的意义以及python实现

相关文章

关键词: 全排列

相关评论

本站评论功能暂时取消,后续此功能例行通知。

一、不得利用本站危害国家安全、泄露国家秘密,不得侵犯国家社会集体的和公民的合法权益,不得利用本站制作、复制和传播不法有害信息!

二、互相尊重,对自己的言论和行为负责。

好贷网好贷款