字符串全排列

将字符串abc进行全排列

#include "stdafx.h"
#include <vector>
#include <iostream>
using namespace std;

void cSwap(char* str,int m,int n)
{
	char ch;
	ch=str[m];
	str[m]=str[n];
	str[n]=ch;

	return;
}

char mystr[]="abc";
void allSort(char* str)
{
	if(*str=='')
	{
		cout<<mystr<<endl;
		return;
	}
	else
	{
		for(int i=0;i<strlen(str);i++)
		{
			cSwap(str,0,i);					//递归程序考虑局部就可以
			allSort(str+1);
			cSwap(str,0,i);
		}
	}
	return;
}

int main(void)
{
	allSort(mystr);

	system("pause");
	return 0;
}


原文地址:https://www.cnblogs.com/cxchanpin/p/6991306.html