给定abcdefghi,且从第三个开始旋转,要求
时间复杂度为O(n),空间复杂度为O(1). 思路: 1、先旋转前三个abc->cba 2、在旋转剩下部分的defghi->ihgfed 3、最后整体旋转cbaihgfed->defghiabc 三个过程用同一个函数就搞定! 源码如下,VC6.0测试通过。/** 左旋转字符串,时间复杂度为O(n)* 空间复杂度为O(1)* xtfggef 2012/5/9*/#include注意事项: 1、程序中写空格的时候,别忘了切换到英文输入法环境下,否则汇报错:error C2018: unknown character '0xa1' 2、puts()的用法:puts()是C语言的输出函数,类似于printf(); 区别在于: 1、puts()包含输出后换行。等价于printf("%s\n",a); 2、puts()函数只能输出字符串,不能数值或进行格式变换#include /** 进行局部旋转*/char * invert(char * start,char * end){ char tmp,*ptmp = start; while(start!=NULL&&end!=NULL&&start