从品牌网站建设到网络营销策划,从策略到执行的一站式服务
题目:实现一个函数,可以左旋字符串中的k个字符。
ABCD左旋一个字符得到BCDA
ABCD左旋两个字符得到CDAB
网站设计制作过程拒绝使用模板建站;使用PHP+MYSQL原生开发可交付网站源代码;符合网站优化排名的后台管理系统;网站设计制作、成都网站设计收费合理;免费进行网站备案等企业网站建设一条龙服务.我们是一家持续稳定运营了10多年的创新互联公司网站建设公司。
方法一:直接旋转
void left_move(chararr, int k)//左旋字符串
{
char tmp = 0;
charp = arr;
while (k!=0)
{
tmp =p;
while ((p+1) != '\0')
{
p = (p + 1);
p++;
}
*p = tmp;
k--;
}
}
方法二:
void left_move2(char*arr, int k)//更优解法
//要旋转三次分三步abcdef==》defabc
//1.先旋转前面k个==》cbadef
//2.再转后面的剩余部分==》cbafed
//3.整体旋转==》defabc
{
int len = strlen(arr);
void Reverse(left, right);
Reverse(arr, arr + k - 1);
Reverse(arr + k, arr + len - 1);
Reverse(arr, arr + len - 1);
}
void Reverse(charleft, charright)
{
char tmp = 0;
while (left < right)
{
tmp = left;
left = right;
right = tmp;
left++;
right--;
}
}
int main()
{
int k = 2;
char arr[] = "abcd";
int len = strlen(arr);
/left_move(arr, 2);/
int left = arr;
int right = arr + len - 1;
left_move2(arr, k);
printf("%s", arr);
system("pause");
return 0;
}
成都网站建设公司地址:成都市青羊区太升南路288号锦天国际A座10层 建设咨询028-86922220
成都快上网科技有限公司-四川网站建设设计公司 | 蜀ICP备19037934号 Copyright 2020,ALL Rights Reserved cdkjz.cn | 成都网站建设 | © Copyright 2020版权所有.
专家团队为您提供成都网站建设,成都网站设计,成都品牌网站设计,成都营销型网站制作等服务,成都建网站就找快上网! | 成都网站建设哪家好? | 网站建设地图