卡码网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;
}
相关推荐
MX_93591 天前
Spring MVC拦截器
java·后端·spring·mvc
橘子编程1 天前
MindOS:你的AI第二大脑知识库
java·开发语言·人工智能·计算机网络·ai
XWalnut1 天前
LeetCode刷题 day9
java·算法·leetcode
忧郁的Mr.Li1 天前
JAVA工具类---PDF电子签章工具类
java·pdf
aini_lovee1 天前
C# 快速搜索磁盘文件解决方案
开发语言·c#
小陈工1 天前
2026年4月8日技术资讯洞察:边缘AI推理框架竞争白热化,Python后端开发者的机遇与挑战
开发语言·数据库·人工智能·python·微服务·回归
零二年的冬1 天前
epoll详解
java·linux·开发语言·c++·链表
凭君语未可1 天前
Java 中的接口是什么
java·开发语言
XiYang-DING1 天前
【Java】二叉树
java·开发语言·数据结构
凌冰_1 天前
Servlet+Thymeleaf + Fetch 实现无刷新异步请求
java·servlet