题目描述
输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。 结果请按字母顺序输出。
输入描述
输入一个字符串,长度不超过9(可能有字符重复),字符只包括大小写字母。
输出描述
顺序输出字符串的所有排列
题目分析 这是一个字符串全排列的问题,把全部序列存在Tre...
分类:
其他好文 时间:
2016-05-23 13:29:55
阅读次数:
184
字符串的全排列问题: 给定字符串S[0...N-1],设计算法,枚举字符串的全排列。 1、无重复字符串全排列非递归算法 程序实现: 运行结果: 说明:在每次递归前需要保证字符串的顺序不变,因此有每次的替换过程。 2、有重复字符串队规算法 程序实现: 运行结果: 说明:本算法时间复杂度能达到O((n+ ...
分类:
其他好文 时间:
2016-05-01 17:39:56
阅读次数:
327
public class TestB { public static void permutation(String str,Set set){ if(str==null) return; int len=str.length(); if(len==0 || len==1)return; ...
分类:
其他好文 时间:
2015-12-13 23:39:01
阅读次数:
142
public class TestB { public static void permutation(String str,Set set){ if(str==null) return; int len=str.length(); if(len==0 || len==1)return; ...
分类:
其他好文 时间:
2015-12-13 23:26:44
阅读次数:
151
打印字符串的全排列算法的思路:把一个字符串分成两部分,第一个字符+后面部分所有的字符。这样就能够递归的求解整个过程了:1.每个字符都做一次首字符2.当某个字符作为首字符的时候,求后面所有字符的全排列而这里的求后面所有字符的全排列可以看成递归的子问题全排列的递归树:但是这里还有一个问题,那就是字符串中...
分类:
编程语言 时间:
2015-10-16 06:15:19
阅读次数:
197
差不多半个月没写博客了,今天再写一篇。
字符串全排列相信大家都不陌生,对于我来说真的是写了又忘,忘了又写,所以决定写成一篇博客,废话不多说下面我来分析问题:
问题描述:给定一个字符串写出它的全排列,例如ab,全排列是ab,ba,而abc的全排列abc,acb,bac,bca,cab,cba。
解题思路:我们以具体例子分析,假如abc,如上所示,它的全排列是不是就是把字符串中每一...
分类:
编程语言 时间:
2015-08-09 15:38:11
阅读次数:
146
#include "stdafx.h"
#include
#include
using namespace std;void permutation(char *pStr, char* pBegin)
{
assert(pStr&&pBegin);
if (*pBegin == '\0')
cout << pStr << e...
分类:
其他好文 时间:
2015-06-10 17:27:25
阅读次数:
98
字符串全排列算法
设R={r1,r2,...,rn}是要进行排列的n个元素,Ri=R-{ri}
ri+Perm(X)表示在全排列Perm(X)的每一个排列前加上前缀ri得到的排列。
(1)当n=1时,Perm(R)=(r),其中r是集合R中唯一的元素。
(2)当n>1时,Perm(R)可由(r1)+Perm(R1),(r2)+Perm(R2),...,(rn)+Perm(Rn)构成。...
分类:
其他好文 时间:
2015-04-21 20:44:19
阅读次数:
129
1、快速统计字符串中每个字符出现的个数hash表2、求两个字符串公共的最长子串长度和子串双重循环遍历找到长度,同时用二重指针保留住最长长度时候的指针位置3、求一个字符串中最大的重复子串长度和子串和2的思路差不多4、将一个字符串全排列输出(1)递归 (2)使用STL中的next_permutation...
分类:
其他好文 时间:
2015-04-20 22:22:57
阅读次数:
137