卡码网55:右旋字符串


思路:

和LeetCode151思路类似

①整体翻转

②前k个翻转

③后k个翻转

c 复制代码
#include<stdio.h>
#include<string.h>
void reverse(char *s,int L,int R)
{
    int len=R-L+1;
    int j=R;
    for(int i=L;i<L+len/2;i++)
    {
        char tmp=s[i];
        s[i]=s[j];
        s[j--]=tmp;
    }
}
int main()
{
    char str[10000];
    //1.接收字符串和正整数k
    //printf("请输入正整数k\n");
    int k;
    scanf("%d\n",&k);
    //printf("请输入一个字符串:\n");
    fgets(str,sizeof(str),stdin);
    // 去掉末尾的换行符(如果有)
    str[strcspn(str, "\n")] = '\0';
    //2.获取字符串长度
    int len=strlen(str);
    //3.整体翻转
    reverse(str,0,len-1);
    //4.局部翻转
    reverse(str,0,k-1);//前k个
    reverse(str,k,len-1);//后k个
    //3.输出字符串
    printf("%s\n",str);
    return 0;
}
相关推荐
萧曵 丶4 分钟前
Rust 所有权系统:深入浅出指南
开发语言·后端·rust
netyeaxi7 分钟前
Java:使用spring-boot + mybatis如何打印SQL日志?
java·spring·mybatis
xiaolang_8616_wjl9 分钟前
c++文字游戏_闯关打怪2.0(开源)
开发语言·c++·开源
收破烂的小熊猫~17 分钟前
《Java修仙传:从凡胎到码帝》第四章:设计模式破万法
java·开发语言·设计模式
猴哥源码25 分钟前
基于Java+SpringBoot的动物领养平台
java·spring boot
老任与码29 分钟前
Spring AI Alibaba(1)——基本使用
java·人工智能·后端·springaialibaba
小兵张健30 分钟前
武汉拿下 23k offer 经历
java·面试·ai编程
FreeBuf_40 分钟前
Apache组件遭大规模攻击:Tomcat与Camel高危RCE漏洞引发数千次利用尝试
java·tomcat·apache
nananaij1 小时前
【Python进阶篇 面向对象程序设计(3) 继承】
开发语言·python·神经网络·pycharm