打印一个字符串的所有排列。
//打印一个字符串的所有排列。
void printSequence(char* pChara)
{
int i = 0;
static int MAX_LEN = strlen(pChara);
if (pChara[0] == '\0')
{
for (int i = 0; i < MAX_LEN; i ++)
{
printf("%c", pChara[i + 1]);
}
printf("\n", "");
}
char* tempChar = pChara;
while (*tempChar != '\0' )
{
char* pMyString = new char[MAX_LEN + 1];
memcpy(pMyString, pChara, MAX_LEN + 1);
memcpy(pMyString + i, pMyString + i + 1, MAX_LEN - i);
pMyString[MAX_LEN] = *tempChar;
printSequence(pMyString);
tempChar ++;
i ++;
delete[] pMyString;
}
}
打印一个字符串的所有排列。相关推荐
- 算法-打印一个字符串的全部子序列,包括空字符串
题目:打印一个字符串的全部子序列,包括空字符串 假如该字符串为"abc"则用画图的方式穷举所有可能 代码如下: public class PrintAllSubsquences { ...
- 7-20 判断两个字符串是否为变位词 (10 分)如果一个字符串是 另一个字符串的重新排列组合,那么这两个字符串互为变位词。比如,”heart”与”earth”互为变位 词,”Mary”与”arMy
7-20 判断两个字符串是否为变位词 (10 分) 如果一个字符串是 另一个字符串的重新排列组合,那么这两个字符串互为变位词.比如,"heart"与"earth" ...
- R7-如果一个字符串是 另一个字符串的重新排列组合,那么这两个字符串互为变位词。比如,”heart”与”earth”互为变位 词,”Mary”与”arMy”也互为变位词。输入格式:第一行输入第一个字符
如果一个字符串是 另一个字符串的重新排列组合,那么这两个字符串互为变位词.比如,"heart"与"earth"互为变位 词,"Mary"与& ...
- 暴力递归——打印一个字符串的全部子序列
打印一个字符串的全部子序列 我们先来看看字符串的子串和子序列有什么区别? 字符串的子串:必须是连续的一段 字符串的子序列:可以不连续,但是相对次序不能乱(每个字符 要跟不要 所有的路都走一遍)--深度 ...
- 打印一个字符串的全部子序列,包括空字符串
package class_08;import java.util.ArrayList; import java.util.List; /*** * 打印一个字符串的全部子序列,包括空字符串**/ p ...
- 【20190405】算法-输入一个字符串,按字典序打印出该字符串中字符的所有排列
方法一:利用递归 利用递归求全排列的过程真的很难理解,先把代码贴上来吧 function Permutation(str) {// write code hereif(!str){return str ...
- 打印给定字符串中字符的所有排列
题目: 输入一个字符串,打印出该字符串中字符的所有排列.例如输入字符串abc,则输出由字符a.b.c所能排列出来的所有字符串abc.acb.bac.bca.cab和cba. 解决: 简单起见,字符串中 ...
- 求得到一个字符串@“absdfasdfsdfdsafsd....”所有的排列
//得到一个字符串@"absdfasdfsdfdsafsd...."所有的排列 length!/((相同项)!*(相同项)!)-(int )numberOfstring:(NSSt ...
- C语言打印字符串的所有排列组合(附完整源码)
C语言打印字符串的所有排列组合 字符串的所有排列问题 C语言打印字符串的所有排列组合的完整源码(定义,实现,main函数测试) 字符串的所有排列问题 示例:ABC的排列是ABC,ACB,BCA,BAC ...
最新文章
- pip install scipy和matplotlib报错的问题详解:(pip install其它时报错通用)
- 关于MYSQL 字符转义问题总结
- MATLAB生成正态样本以及正态矩阵、从文件读入矩阵
- Linux下修改命令提示符
- corpus academic writing
- I+关系网络分析发布,提供完整的可视化分析和关系引擎功能
- linux部署redis集群遇到的问题
- 信息学奥赛一本通(2034:【例5.1】反序输出)
- where和having区别
- Competitive Programming专题题解(1)
- numpy - np.reshape:将二维数组转变三维数组
- 36. Valid Sudoku/37. Sudoku Solver - 数独问题-- backtracking 经典
- 英语音标原来这么丰富,换个角度把欧洲语言作为一个体系
- C# 简单的ZEBRA标签打印程序
- 远程工具teamviewer使用教程
- 记录mysql查询过去十二个月中每个月的数据情况(含本月)
- Android native层Hander原理分析
- JavaScript插件编写
- vue—实现组织架构图(vue-org-tree插件)——技能提升
- Nginx sendfile作用