首页 > 其他 > 详细

Permutations

时间:2014-08-06 22:25:02      阅读:350      评论:0      收藏:0      [点我收藏+]

问题:全排列

class Solution {
public:
    void dfs(vector<int> &num,vector<int> &vec2,vector<vector<int> >&vec1,int step,int vis[])
    {
        if(step==num.size())
        {
            vec1.push_back(vec2);
            return ;
        }
        for(int i=0;i<num.size();i++)
        {
            int t=num[i];
            if(vis[i]==0)
            {
                vis[i]=1;
                vec2.push_back(t);
                dfs(num,vec2,vec1,step+1,vis);
                vec2.pop_back();
                vis[i]=0;
            }
        }
    }
    vector<vector<int> > permute(vector<int> &num) {
        vector<vector<int> > vec1;
        vector<int> vec2;
        int vis[100];
        memset(vis,0,sizeof(vis));
        dfs(num,vec2,vec1,0,vis);
        return vec1;
    }
};

  

Permutations,布布扣,bubuko.com

Permutations

原文:http://www.cnblogs.com/zsboy/p/3895600.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!