代码随想录算法训练营第51期第8天 | 344. 反转字符串、541.反转字符串 II、卡码网:54.替换数字

devtools/2024/12/6 7:18:46/

344. 反转字符串

344. 反转字符串icon-default.png?t=O83Ahttps://leetcode.cn/problems/reverse-string/1.这道题很简单,直接使用双指针就可以

2.这里有一个可以优化的点,left++和right-- 可以放在字符串替换的时候完成,没必要单独写

void reverseString(char* s, int sSize) {int left = 0;int right = sSize - 1;while (left <= right) {char tmp = s[left];s[left] = s[right];s[right] = tmp;left++;right--;}
}

541.反转字符串 II

541. 反转字符串 IIicon-default.png?t=O83Ahttps://leetcode.cn/problems/reverse-string-ii/1.两种情况,一种小于k,一种大于k,然后步长都是2k

2.这里优化写法是k = i + k > len ? len - i : k;right = i + k - 1; 但是基于工作后的一个考量,三元运算符会存在codecheck和代码cleancode的风险;

char* reverseStr(char* s, int k) {int sLen = strlen(s);for(int i = 0; i < sLen; i += 2 * k) {  int left = i;int right;if (i + k <= sLen) {right = i + k - 1;} else {right = sLen - 1;}while (left <= right) {char tmp = s[left];s[left++] = s[right];s[right--] = tmp;}}return s;
}

卡码网:54.替换数字

54. 替换数字(第八期模拟笔试)icon-default.png?t=O83Ahttps://kamacoder.com/problempage.php?pid=10641.主要还是掌握学习字符串的一些方法

2.可以使用自己封装的isDigital函数可判断字符是否是数字

#include<stdio.h>
int isDigital(char ch) {return (ch >= '0' && ch <= '9');
}
int main(){char s[10000];scanf("%s",&s);char res[20000];int idx = 0;for (int i = 0; i < strlen(s); i++) {if (isDigital(s[i]) == 0) {res[idx++] = s[i];} else {res[idx++] = 'n';res[idx++] = 'u';res[idx++] = 'm';res[idx++] = 'b';res[idx++] = 'e';res[idx++] = 'r';}}for (int i = 0; i < strlen(res); i++){printf("%c", res[i]);}return 0;
}


http://www.ppmy.cn/devtools/139561.html

相关文章

SpringBoot Web 开发请求参数

SpringBoot Web 开发请求参数 简单的 web 请求: @RestController public class HelloController {@RequestMapping("sayHello")public String sayHello(){System.out.println("Hello World");return "hello world";} }获取请求参数 简单参数…

jmeter如何导出中文版的测试报告?

文章目录 0、初始步骤&#xff1a;把报告模板换成中文形式1、首先添加一份聚合报告2、然后点开【聚合报告】3&#xff0c;生成报告3.1 选择【工具】-【generate HTML report】3.2 【generate HTML report】参数详解3.3 、最后点击 【generate report】直接生成。 声明&#xff…

统计数字字符个数

统计数字字符个数 C语言实现C实现Java实现Python实现 &#x1f490;The Begin&#x1f490;点点关注&#xff0c;收藏不迷路&#x1f490; 输入一行字符&#xff0c;统计出其中数字字符的个数。 输入 一行字符串&#xff0c;总长度不超过255。 输出 出为1行&#xff0c;输出…

使用伪装IP地址和MAC地址进行Nmap扫描

使用伪装IP地址和MAC地址进行Nmap扫描 在某些网络设置中&#xff0c;攻击者可以使用伪装的IP地址甚至伪装的MAC地址进行系统扫描。这种扫描方式只有在可以保证捕获响应的情况下才有意义。如果从某个随机的网络尝试使用伪装的IP地址进行扫描&#xff0c;很可能无法接收到任何响…

大数据项目-Django基于聚类算法实现的房屋售房数据分析及可视化系统

《[含文档PPT源码等]精品Django基于聚类算法实现的房屋售房数据分析及可视化系统》该项目含有源码、文档、PPT、配套开发软件、软件安装教程课程答疑等&#xff01; 数据库管理工具&#xff1a;phpstudy/Navicat或者phpstudy/sqlyog 后台管理系统涉及技术&#xff1a; 后台使…

JAVAWeb——maven、SpringBoot、HTTP、Tomcat

目录 1.maven a.概述 b.作用 c.仓库 b.坐标 c.依赖管理 2.SpringBoot 3.HTTP a.概述 b.请求协议 c.响应协议 d.协议解析 4.Tomcat a.Web服务器 b.Tomcat c.SpringBoot与Tomcat关系 1.maven a.概述 Maven是apache旗下的一个开源项目&#xff0c;是一款用于管理…

【开源】A060-基于Spring Boot的游戏交易系统的设计与实现

&#x1f64a;作者简介&#xff1a;在校研究生&#xff0c;拥有计算机专业的研究生开发团队&#xff0c;分享技术代码帮助学生学习&#xff0c;独立完成自己的网站项目。 代码可以查看项目链接获取⬇️&#xff0c;记得注明来意哦~&#x1f339; 赠送计算机毕业设计600个选题ex…

美畅物联丨智能监控,高效运维:视频汇聚平台在储能领域的实践探索

在当今全球能源格局不断变化的大背景下&#xff0c;对清洁能源的需求正以惊人的速度增长。储能项目作为平衡能源供需、提升能源利用效率的关键环节&#xff0c;其规模和复杂度也在不断攀升。在储能项目的运营管理过程中&#xff0c;安全监控、设备运维以及数据管理等方面面临着…