串“abcd”每个字符都向右移位,最右的移动到第一个字符的位置,就变为“dabc”。这称为对串进行位移=1的轮换。同理,“abcd”变为:“cdab”则称为位移=2的轮换。
下面的代码实现了对串s进行位移为n的轮换。
#include <iostream>
#include <string>
using namespace std;
void shift(char *s,int n)
{
char* p; //声明两个指针 p 在原串 s 上移动,指针 q 在新开辟的空间移动
char* q;
int len=strlen(s);
if(len=