题解 | #全排列#抄的,要注意下这个全排列

全排列

https://www.nowcoder.com/practice/5632c23d0d654aecbc9315d1720421c1

#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
#include <stack>
#include <map>
using namespace std;

void permute(string s, int i) { //i是到了s的第几个位置
    if (i >= s.size()) { //到结尾了,输出字符
        printf("%s\n", s.c_str());
        return;
    }

    for (int j = i; j < s.size(); j++) {
        swap(s[i], s[j]);
        permute(s, i + 1);
    }
    return;

}

int main() {

    string s;
    getline(cin, s);
    sort(s.begin(), s.end());
    permute(s, 0);

}

全部评论

相关推荐

10-25 00:32
香梨想要offer:感觉考研以后好好学 后面能乱杀,目前这简历有点难
点赞 评论 收藏
分享
11-15 18:39
已编辑
西安交通大学 Java
全村最靓的仔仔:卧槽,佬啥bg呢,本也是西交么
点赞 评论 收藏
分享
点赞 1 评论
分享
牛客网
牛客企业服务