全排列
Posted liufei-
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了全排列相关的知识,希望对你有一定的参考价值。
题目描述】 给定一个由不同的小写字母组成的字符串,输出这个字符串的所有全排列。 我们假设对于小写字母有‘a’ <‘b’ < ... <‘y’<‘z’,而且给定的字符串中的字母已经按照从小到大的顺序排列。 【输入】 只有一行,是一个由不同的小写字母组成的字符串,已知字符串的长度在1到6之间。 【输出】 输出这个字符串的所有排列方式,每行一个排列。要求字母序比较小的排列在前面。字母序如下定义: 已知S=s1s2...sk,T=t1t2...tkS=s1s2...sk,T=t1t2...tk,则S<T等价于,存在p(1≤p≤k),使得s1=t1,s2=t2,...,sp?1=tp?1,sp<tps1=t1,s2=t2,...,sp?1=tp?1,sp<tp成立。 【输入样例】 abc 【输出样例】 abc acb bac bca cab cba
#include <bits/stdc++.h> using namespace std; bool vis[15]; char str[15],temp[15]; int n; void dfs(int s) { if(s==n) //判断是否可以输出字符串 { temp[s]=‘