【刷题剑指offer】字符串的排列
来源:互联网 发布:三星note8网络信号差 编辑:程序博客网 时间:2024/06/19 06:18
题目:输入一个字符串,打印出该字符中字符的所有排列。例如输入字符串abc,则打印出由字符a\b\c所能排列出来的所有字符串abc\acb\bac\bca\cab\cba
思路:递归实现。分为两步:1、首先求出所有可能出现在第一个位置的字符,即把第一个字符和后面所有字符交换。
2、固定第一个字符,求后面所有字符的排列。
那么后面的字符也可以分为两部分,第一个字符和后面的所有字符,我们重复1、2步骤,所以这是一个递归过程
void Permutation(char*pStr){if (pStr == NULL)return;Permutation(pStr, pStr);}void Permutation(char*pStr, char*pBegin){if (pBegin == '\0')return pStr;else{for (char pCh = pBegin; pCh != '\0'; pCh++){char temp = *pCh;*pCh = *pBegin;*pBegin = *temp;Permutation(pStr, pBegin + 1);temp = *pCh;*pCh = *pBegin;*pBegin = *temp;}}}
阅读全文
0 0
- 【刷题剑指offer】字符串的排列
- 【剑指offer】字符串的排列
- 剑指offer--字符串的排列
- 《剑指offer》字符串的排列
- 【剑指Offer】字符串的排列
- 剑指offer--字符串的排列
- 剑指offer:字符串的排列
- 剑指offer:字符串的排列
- 剑指offer:字符串的排列
- [剑指offer]字符串的排列
- 《剑指offer》-字符串的排列
- 剑指offer|字符串的排列
- 【剑指offer】字符串的排列
- 《剑指offer》字符串的排列
- 剑指Offer:字符串的排列
- 【剑指offer】字符串的排列
- 剑指offer-字符串的排列
- 剑指offer 字符串的排列
- C#编程入门_常用集合_14
- Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
- 设计模式(7)--桥接模式
- HDU-3938 Portal 克鲁斯卡尔思想 (离线并查集)
- 详解系统中的环境变量
- 【刷题剑指offer】字符串的排列
- CountDownLatch与CyclicBarrier
- iOS编程学习十一
- Nginx 配置文件 nginx.conf 详解
- STM32.ADC原理
- java 基础部分总结
- linux命令操作笔记
- STM32-查看程序占用ROM和RAM
- 框架和设计模式的区别