给出一个函数来输出一个字符串的所有排列
2014-09-18 10:06
381 查看
#include "stdio.h" #include "stdlib.h" #include "string.h" void permutation(char * p_str, char * p_begin) { if(!p_str || !p_begin) { return; } if('\0' == *p_begin) { printf("%s\n", p_str); } else { char * p_ch; for(p_ch = p_begin; *p_ch != '\0'; ++p_ch) { char temp; temp = *p_ch; *p_ch = *p_begin; *p_begin = temp; permutation(p_str, p_begin + 1); // a b c d // //(*p_ch != *p_begin) temp = *p_ch; *p_ch = *p_begin; *p_begin = temp; } } } int main(int argc, char * argv[]) { char strr[6]="123"; // 1 3 3 // //char strd[4]; permutation(strr, strr); return 0; }
相关文章推荐
- 给出一个函数来输出一个字符串的所有排列
- 给出一个函数来输出一个字符串的所有排列
- 算法40(字符串的排列,给出一个函数来输出一个字符串的所有排列)
- 给出一个函数来输出一个字符串的所有排列
- 给出一个函数来输出一个字符串的所有排列
- 微软等数据结构+算法面试100题(2)--给出一个函数来输出一个字符串的所有排列
- 写一个函数输出一个字符串中的所有排列
- 笔试题:给出一个函数来输出字符串的所有排列
- 给出一个函数来输出一个字符串的所有排列。
- 给出一个函数来输出一个字符串的所有排列。
- 70 给出一个函数来输出一个字符串的所有排列
- 3、给出一个函数输出字符串的所有排列
- 【递归】输出一个字符串的所有排列
- 用递归的思想写编写一个函数reverse_string(char * string)实现字符串反向输出和反向排列
- 题目:输入一个字符串,打印出该字符串中字符的所有排列。例如输入字符串abc,则输出由字符a、b、c所能排列出来的所有字符串abc、acb、bac、bca、cab和cba。
- 输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。 结果请按字母顺序输出。
- 输入一个字符串,要求输出字符串中字符所有的排列,例如输入"abc",得到"abc","acb","bca","bac","cab","cba"
- 编写函数fun(char *s),其功能是:把字符串中所有字符前移一个位置,串中的第1个字符移到最后。 例如,若输入字符串为:ABC123xyz ,则应输出字符串: BC123xyzA 。
- Swift - 排列组合之全排列 (输入一个字符串,输出该字符串包含的字符的所有组合)
- 输出一个字符串所有排列。注意有重复字符