获得一个数组的全排列
来源:互联网 发布:今天eia数据公布 编辑:程序博客网 时间:2024/05/17 01:04
例如 char a[]="abcd"
求这个数组的全排列,将复杂问题或者不能直接解决的问题转变为多个简单问题的方法就是,让所有的元素一次成为第一个元素,
void Traversal(char* const a,char* const pBegin){if(NULL==a)return;if('\0'==*pBegin){cout<<a<<endl;}else{for(char* ptr=pBegin;*ptr!='\0';ptr++){char temp=*ptr;*ptr=*pBegin;*pBegin=temp;Traversal(a,pBegin+1);temp=*ptr;*ptr=*pBegin;*pBegin=temp;}}}
哈哈,根据剑指offer以下就做出来了,真是不看不知道一看吓一跳,不过,我遇到的问题却是在调用方式上
int main(){char *str="abcd";Traversal(str,str);return 0;}
这样调用就会出现写入地址错误,后来想了想,妹的,str分配到了常量区是制度属性的。
后来改成了
char str[]="abcd"
万事大吉、。。。
0 0
- 获得一个数组的全排列
- 获得一个数组中所有元素进行的全排列,获得其中最小的数字
- 获得一个字符串的全排列
- 解答一个数组全排列的问题
- 打印一个数组的全排列
- 求一个数组的全排列算法
- 求一个数组的全排列
- 数组的全排列
- 数组的全排列
- 数组的全排列
- 数组的全排列
- 数组的全排列
- 数组的全排列
- 数组的全排列
- 数组的全排列
- 给定一个数组,求数组的全排列
- JAVA获得一个数组的指定长度的排列
- JAVA里实现一个数组全排列的方法
- hdu5294||2015多校联合第一场1007 最短路+最大流
- 50个强大的Python模块
- LeetCode题解——Merge Sorted Array
- 杭电1860 统计字符
- LeetCode 7 Reverse Integer 这道题被血虐
- 获得一个数组的全排列
- 011.Singleton 单例模式
- 图像处理与计算机视觉基础,经典以及最近发展
- TCP/IP协议
- 在交叉编译器中出现 “no such file or directory”
- 00-自测4. Have Fun with Numbers (20)
- Python中choice用法与三元操作
- 并查集
- 012.private protect public 访问控制符