首页 > 代码库 > 字符串旋转问题
字符串旋转问题
字符串旋转问题:"abcdefgh" 向左旋转3个字符,"defghabc"
int gcd(int a,int b){//求最大公约数 if(a==0||b==0) return -1; int t=a; if(a<b) { a=b; b=t; } while(b) { t=a%b; a=b; b=t; } return a;}void rotation(char *p,int n,int rotdist){//旋转 int right=gcd(rotdist,n); for(int i=0;i<right;i++){ char t=p[i]; int j=i; while(true){ int k=j+rotdist; if(k>=n) k-=n; if(k==i) break; p[j]=p[k]; j=k; } p[j]=t; }}
字符串旋转问题
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。