数据结构——算法之(036)(输出字符串的所有排列)
来源:互联网 发布:泛函是什么 知乎 编辑:程序博客网 时间:2024/06/18 11:45
【申明:本文仅限于自我归纳总结和相互交流,有纰漏还望各位指出。 联系邮箱:Mr_chenping@163.com】
题目:
输出字符串的所有排列,如 abc 的全排列: abc, acb, bca, dac, cab, cba
题目分析:
1、先遍历字符串,然后顺序交换字符串的两个字符,然后再次递归后,把刚才那两个字符交换回来
算法实现:
#include <iostream>using namespace std;void str_permutation(char* str, char* start){if(*start == '\0')std::cout<<str<<std::endl; char *temp = start; while(*temp != '\0') { swap(*start, *temp); str_permutation(str, start+1); swap(*start, *temp); temp++; }}int main(void){char str[] = "123";str_permutation(str,str);return 0;}
0 0
- 数据结构——算法之(036)(输出字符串的所有排列)
- 算法40(字符串的排列,给出一个函数来输出一个字符串的所有排列)
- 微软等数据结构+算法面试100题(2)--给出一个函数来输出一个字符串的所有排列
- 递归的应用,输出字符串的所有排列(java)
- 输出字符串的所有排列
- 算法 - 输出一个字符串的全排列(C++)
- 数据结构——算法之(030)(将字符串中所有小写字母排在大写字母的前面)
- 数据结构——算法之(031)(将字符串中所有小写字母排在大写字母的前面)
- 数据结构——算法之(012)( linux C 所有字符串操作函数实现)
- 第八周项目三(2)—顺序串算法之实现将已知字符串所有字符倒过来重新排列
- java输出字符串的所有排列
- 【递归】输出一个字符串的所有排列
- 输出字符串中字符的所有排列
- 已知一个字符串,输出它包含字符的所有排列(permutations)
- 数据结构——算法之(008)( 输入一个表示整数的字符串,把该字符串转换成整数并输出)
- 算法实现:字符串的所有排列情况
- 数据结构与算法分析笔记与总结(java实现)--字符串1:字符串的排列(*)
- 给出一个函数来输出一个字符串的所有排列。
- 求解电文哈弗曼加权路径大小
- Ubuntu下备份系统的方法
- 一个函数方程的解
- Linux shell脚本入门
- Android Service完全解析,关于服务你所需知道的一切(上)
- 数据结构——算法之(036)(输出字符串的所有排列)
- AVAudioRecorder录音和AVAudioPlayer播放声音小的问题!
- Android短信发送器
- 解方程 (允许误差)
- uva 111
- 【IOS学习】Objective-C 协议,以及demo
- 筑梦创想:登陆钓鱼岛Unity3d工程文件发布啦!包括后台程序
- kinect学习笔记2
- IOS 使用相机或者在相册里获取图片