代码随想录 算法训练营 d7 Leetcode344 反转字符串 Leetcode541 反转字符转2 替换数字54

news/2024/10/9 10:30:54

Leetcode344 反转字符串

题目链接

双指针思想 交换字符即可

class Solution {public void reverseString(char[] s) {int l = 0;int r  = s.length-1;while(l<r){char tep = s[l];s[l] = s[r];s[r] = tep;l++;r--;}}
}

Leetcode541 反转字符转2

题目链接

讲解

理顺题目逻辑即可

每次直接跳入后2k个

根据剩余的字符判断反转的串

不足k个直接全部反转,不到2k大于k就反转前k个

class Solution {public String reverseStr(String s, int k) {char[] ch = s.toCharArray();// 1. 每隔 2k 个字符的前 k 个字符进行反转for (int i = 0; i< ch.length; i += 2 * k) {// 2. 剩余字符小于 2k 但大于或等于 k 个,则反转前 k 个字符if (i + k <= ch.length) {reverse(ch, i, i + k -1);continue;}// 3. 剩余字符少于 k 个,则将剩余字符全部反转reverse(ch, i, ch.length - 1);}return  new String(ch);}public void reverse(char[] ch, int i, int j) {for (; i < j; i++, j--) {char temp  = ch[i];ch[i] = ch[j];ch[j] = temp;}
}
}

替换数字54

import java.util.Scanner;class Main {public static void main(String[] args) {Scanner in = new Scanner(System.in);String s = in.nextLine();StringBuilder sb = new StringBuilder();for (int i = 0; i < s.length(); i++) {if (Character.isDigit(s.charAt(i))) {sb.append("number");}else sb.append(s.charAt(i));}System.out.println(sb);}
}

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/43096.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

高性能版本的零内存分配LikeString函数(ZeroMemAllocLikeOperator)

继上一篇文章在.NET Core,除了VB的LikeString,还有其它方法吗?(四种LikeString实现分享)分享了四种实现方式,笔者对这四种实现方式,不管是执行性能还是内存分配性能上,都不太满意。 那么是否有好的实现方法呢?答案是有的。 今天我们就搬出ReadOnlySpan<T>这个非常…

基于FMQL20S400全国产化ARM核心模块

板卡概述TES720D是一款基于某国产FMQL20S400的全国产化核心模块。该核心模块将FMQL20S400(兼容FMQL10S400)的最小系统集成在了一个50*70mm的核心板上,可以作为一个核心模块,进行功能性扩展,特别是用在控制领域,可以发挥其独特的优势。该款核心板的主芯片兼容XILINX的ZYNQ…

harbor搭建

1.Harbor简介 Harbor是由VMware公司开源的企业级的Docker Registry管理项目,它包括权限管理(RBAC)、LDAP、日志审核、管理界面、自我注册、镜像复制和中文支持等功能。 作为一个企业级私有 Registry 服务器,Harbor 提供了更好的性能和安全。提升用户使用 Registry 构建和运行…

关于phpStudy中的phpmyadmin打不开的原因

今天我在配置软件杯的第10道赛题的环境变量的时候,教程显示要打开phpmyadmin,但是我的一直打不开出现以下情况 这是因为WNMP没有启动,只要将他启动就可以正常打开了

linux清理缓存

当cache缓存占用太大,服务起不来,需要查看清理缓存 执行free -m或者free -h,查看缓存释放缓存区内存的方法(请注意,以下操作需要root权限) 建议在清理缓存之前先备份重要数据,以免发生意外情况。 1、清理磁盘缓存 刷新文件系统缓存,将缓存中的数据写入磁盘。 sync 清理页…

Qt - 多线程之线程的开始暂停恢复停止

示例1 在Qt中,可以使用QThread的线程控制功能来暂停和恢复一个线程。这里是一个简单的例子: #include <QThread> #include <QDebug>class WorkerThread : public QThread {void run() override {qDebug() << "Thread is running";// 执行一些任务…

国思RDIF.vNext全新低代码快速开发框架平台6.1版本发布(支持vue2、vue3)

RDIF.vNext全新低代码快速开发框架平台6.1版本发布(支持vue2、vue3)。全新设计,全新开发,代码量减少70%,运行的速度也得到了质的提升,基于.NET6+全新开发,前后端分离,支持Web、App、客户端、微信等,适配各种行业和场景需求。想做各种软件,用RDIF框架都好办!1、平台介…

tomato

21,80,2211,88888 爆破目录 访问 http://192.168.52.129/antibot_image/ 发现存在目录 antibots,接着访问该目录,发现存在很多文件 访问 http://192.168.52.129/antibot_image/antibots/info.php,找到 phpinfo 的信息,F12查看源码发现 hint,存在文件包含漏洞 前面信息搜…