代码随想录刷题day22|(字符串篇)344.反转字符串、541.反转字符串 II
目录
一、题目思路
二、相关题目
三、总结与知识点
3.1 字符数组转换成字符串
一、题目思路
344反转字符串比较容易,双指针即可在空间复杂度为O(1)的基础上解决;
541反转字符串II :其中for循环中 i 每次的取值,不是 i++,这里一开始没想到,不知道怎么用变量控制2k的计数。。。
还有就是,字符串和字符数组之间的转换;
在进行反转时,尾指针的取值是和剩余字符的个数有关系;
首先 i 从0开始,每次取值更新+2k,根据剩余字符的数量,给出反转字符串的尾指针取值,在进行一次反转以后,跳出本次循环,后面的代码不再执行,i 值要更新;
其中,尾指针的取值,有些边界值要清楚,弄不清的时候画图代入;
二、相关题目
344.反转字符串
344. 反转字符串 - 力扣(LeetCode)
class Solution {public void reverseString(char[] s) {int left = 0;int right = s.length - 1;while(left < right){char temp = s[left];s[left] = s[right];s[right] = temp;left++;right--;}}
}
541.反转字符串II
541. 反转字符串 II - 力扣(LeetCode)
class Solution {public String reverseStr(String s, int k) {char[] c = new char[s.length()];for(int i = 0;i < c.length;i++){c[i] = s.charAt(i);}//char[] c = s.toCharArray();for(int i = 0;i < c.length;i+=2 * k){ if((c.length - i) >= k){reverse(c,i,i + k -1);continue;}reverse(c,i,c.length - 1);}return new String(c);//return Arrays.toString(c);}public void reverse(char[] c, int i, int j){while(i < j){char temp = c[i];c[i] = c[j];c[j] = temp;i++;j--;}}
}
三、总结与知识点
3.1 字符数组转换成字符串
new String(c);
-
作用:通过字符数组创建一个新的字符串对象。
-
结果:它会将字符数组中的所有字符按顺序拼接成一个字符串。例如,如果字符数组
c是{'a', 'b', 'c'},那么new String(c)的结果是"abc"。 -
原理:
String类的构造方法会将字符数组中的每个字符依次拼接,形成一个连续的字符串。
Arrays.toString(c);
-
作用:将数组转换为字符串表示形式。
-
结果:它会返回一个表示数组内容的字符串,格式为
[元素1, 元素2, ...]。例如,如果字符数组c是{'a', 'b', 'c'},那么Arrays.toString(c)的结果是"[a, b, c]"。 -
原理:
Arrays.toString方法会遍历数组,并将每个元素用逗号分隔,同时用方括号括起来,形成一个字符串表示数组的结构。
总结:
-
将字符数组直接拼接成一个字符串,应该使用
new String(c); -
保留数组的结构,以字符串形式展示数组内容,应该使用
Arrays.toString(c)。
相关文章:
代码随想录刷题day22|(字符串篇)344.反转字符串、541.反转字符串 II
目录 一、题目思路 二、相关题目 三、总结与知识点 3.1 字符数组转换成字符串 一、题目思路 344反转字符串比较容易,双指针即可在空间复杂度为O(1)的基础上解决; 541反转字符串II :其中for循环中 i 每次的取值,不是 i&#…...
python学opencv|读取图像(五十三)原理探索:使用cv.matchTemplate()函数实现最佳图像匹配
【1】引言 前序学习进程中,已经探索了使用cv.matchTemplate()函数实现最佳图像匹配的技巧,并且成功对两个目标进行了匹配。 相关文章链接为:python学opencv|读取图像(五十二)使用cv.matchTemplate()函数实现最佳图像…...
win10部署本地deepseek-r1,chatbox,deepseek联网(谷歌网页插件Page Assist)
win10部署本地deepseek-r1,chatbox,deepseek联网(谷歌网页插件Page Assist) 前言一、本地部署DeepSeek-r1step1 安装ollamastep2 下载deepseek-r1step2.1 找到模型deepseek-r1step2.2 cmd里粘贴 后按回车,进行下载 ste…...
冯·诺依曼体系结构
目录 冯诺依曼体系结构推导 内存提高冯诺依曼体系结构效率的方法 你使用QQ和朋友聊天时,整个数据流是怎么流动的(不考虑网络情况) 与冯诺依曼体系结构相关的一些知识 冯诺依曼体系结构推导 计算机的存在就是为了解决问题,而解…...
本地部署 DeepSeek-R1 模型
文章目录 霸屏的AIDeepSeek是什么?安装DeepSeek安装图形化界面总结 霸屏的AI 最近在刷视频的时候,总是突然突然出现一个名叫 DeepSeek 的玩意,像这样: 这样: 这不经激起我的一顿好奇心,这 DeepSeek 到底是个…...
Mybatis——sql映射文件中的增删查改
映射文件内的增删查改 准备工作 准备一张数据表,用于进行数据库的相关操作。新建maven工程, 导入mysql-connector-java和mybatis依赖。新建一个实体类,类的字段要和数据表的数据对应编写接口编写mybatis主配置文件 public class User {priva…...
【开源免费】基于Vue和SpringBoot的流浪宠物管理系统(附论文)
本文项目编号 T 182 ,文末自助获取源码 \color{red}{T182,文末自助获取源码} T182,文末自助获取源码 目录 一、系统介绍二、数据库设计三、配套教程3.1 启动教程3.2 讲解视频3.3 二次开发教程 四、功能截图五、文案资料5.1 选题背景5.2 国内…...
nth_element函数——C++快速选择函数
目录 1. 函数原型 2. 功能描述 3. 算法原理 4. 时间复杂度 5. 空间复杂度 6. 使用示例 8. 注意事项 9. 自定义比较函数 11. 总结 nth_element 是 C 标准库中提供的一个算法,位于 <algorithm> 头文件中,用于部分排序序列。它的主要功能是将…...
DNS缓存详解(DNS Cache Detailed Explanation)
DNS缓存详解 清空DNS缓存可以让网页访问更快捷。本文将从什么是DNS缓存、为什么清空DNS缓存、如何清空DNS缓存、清空DNS缓存存在的问题四个方面详细阐述DNS缓存清空的相关知识。 一、什么是DNS缓存 1、DNS缓存的定义: DNS缓存是域名系统服务在遇到DNS查询时自动…...
课设:【ID0022】火车票售票管理系统(前端)
技术栈:Java,JavaSwing,MySQL 数据库表数量:12个 1.功能描述 管理员功能 管理员是系统的高级用户,拥有对整个系统的全面管理权限。管理员的功能模块包括以下六个方面: 对用户管理增删查改 对售票员…...
Ruby 类和对象
Ruby 类和对象 引言 在软件开发中,类和对象是面向对象编程(OOP)的核心概念。Ruby 作为一种动态、解释型编程语言,也以简洁的方式支持面向对象编程。本文将深入探讨 Ruby 中的类和对象,包括它们的定义、创建、使用以及一些高级特性。 类与对象的定义 类 在 Ruby 中,类…...
Java基础知识总结(三十八)--读取数据
使用Reader体系,读取一个文本文件中的数据。返回 -1 ,标志读到结尾。 import java.io.*; class { public static void main(String[] args) throws IOException { /* 创建可以读取文本文件的流对象,让创建好的流对象和指定的文件相关联。…...
交错定理和切比雪夫节点的联系与区别
1. 交错定理 交错定理是切比雪夫逼近理论的核心内容,描述在区间[a,b]上,一个函数 f ( x ) f(x) f(x)的最佳一致逼近多项式 P n ( x ) P_n(x) Pn(x)的特性。定理内容如下: 设 f ( x ) f(x) f(x)是区间[a,b]上的连续函数, P n ( …...
大数据相关职位介绍之三(数据挖掘,数据安全 ,数据合规师,首席数据官,数据科学家 )
大数据相关职位介绍之三(数据挖掘,数据安全 ,数据合规师,首席数据官,数据科学家 ) 文章目录 大数据相关职位介绍之三(数据挖掘,数据安全 ,数据合规师,首席数据…...
GitHub Actions定时任务配置完全指南:从Cron语法到实战示例
你好,我是悦创。 博客网站:https://blog.bornforthis.cn/ 本教程将详细讲解如何在GitHub Actions中配置定时任务(Scheduled Tasks),帮助你掌握 Cron 表达式的编写规则和实际应用场景。 一、定时任务基础配置 1.1 核…...
Van-Nav:新年,将自己学习的项目地址统一整理搭建自己的私人导航站,供自己后续查阅使用,做技术的同学应该都有一个自己网站的梦想
嗨,大家好,我是小华同学,关注我们获得“最新、最全、最优质”开源项目和高效工作学习方法 Van-Nav是一个基于Vue.js开发的导航组件库,它提供了多种预设的样式和灵活的配置选项,使得开发者可以轻松地定制出符合项目需求…...
Easy系列PLC尺寸测量功能块ST代码(激光微距仪应用)
激光微距仪可以测量短距离内的产品尺寸,产品规格书的测量 精度可以到0.001mm。具体需要看不同的型号。 1、激光微距仪 2、尺寸测量应用 下面我们以测量高度为例子,设计一个高度测量功能块,同时给出测量数据和合格不合格指标。 3、高度测量功能块 4、复位完成信号 5、功能…...
Manacher 最长回文子串
方法:求字符串的 #include<bits/stdc.h> using namespace std; using lllong long; const int N1e69; char s[N]; int p[N];int main() {cin>>s1;int nstrlen(s1);s[0]^;s[2*n2]$; for(int i2*n1;i>1;i--){s[i](i&1)?#:s[i>>1];//右移表示…...
51单片机开发:独立键盘实验
实验目的:按下键盘1时,点亮LED灯1。 键盘原理图如下图所示,可见,由于接GND,当键盘按下时,P3相应的端口为低电平。 键盘按下时会出现抖动,时间通常为5-10ms,代码中通过延时函数delay…...
组件框架漏洞
一.基础概念 1.组件 定义:组件是软件开发中具有特定功能或特性的可重用部件或模块,能独立使用或集成到更大系统。 类型 前端 UI 组件:像按钮、下拉菜单、导航栏等,负责构建用户界面,提升用户交互体验。例如在电商 AP…...
智能驾驶之红绿灯识别 斑马线识别 减速带识别 yolo数据集 深度学习数据集 第10625期
智能驾驶之红绿灯识别 斑马线识别 减速带识别 yolo第10625期 README 项目概述 本数据集聚焦于智能驾驶核心道路要素的识别任务,提供高质量标注图像,专为训练和评估目标检测模型而设计。数据涵盖城市道路常见交通设施与标记,适用于自动驾驶感知…...
告别手动画图?聊聊Autoware高精地图那些事:开源工具、格式转换与未来展望
自动驾驶高精地图技术全景:从Autoware工具链到行业实践 当我们在谈论自动驾驶时,"高精地图"始终是绕不开的核心技术支柱。与普通导航地图不同,高精地图需要厘米级精度、丰富的语义信息以及实时更新能力。作为自动驾驶开源生态中的重…...
SteamStub DRM高效移除解决方案:从技术原理到实战应用全流程指南
SteamStub DRM高效移除解决方案:从技术原理到实战应用全流程指南 【免费下载链接】Steamless Steamless is a DRM remover of the SteamStub variants. The goal of Steamless is to make a single solution for unpacking all Steam DRM-packed files. Steamless a…...
罗技鼠标宏压枪脚本终极指南:3步实现绝地求生精准射击
罗技鼠标宏压枪脚本终极指南:3步实现绝地求生精准射击 【免费下载链接】logitech-pubg PUBG no recoil script for Logitech gaming mouse / 绝地求生 罗技 鼠标宏 项目地址: https://gitcode.com/gh_mirrors/lo/logitech-pubg 还在为绝地求生中枪口乱跳而烦…...
206_深度学习进阶:模型选择、过拟合与欠拟合的生存法则
在机器学习中,我们的目标是发现泛化(Generalization)模式,即在未见过的数据上也能预测准确。然而,模型往往会陷入两个极端:要么学得太浅(欠拟合),要么记住了噪音…...
从原始数据到三维点云:TI毫米波雷达信号处理全链路拆解
1. 毫米波雷达基础与TI设备特性 毫米波雷达作为现代感知技术的核心组件,其工作原理类似于蝙蝠的生物声呐系统,只不过使用的是电磁波而非声波。TI(德州仪器)的AWR系列雷达设备因其高性价比和完整开发生态,成为工业界的热…...
字节跳动的Trae的使用感受,及对比腾讯小龙虾使用场景
一、Trae的使用 Trae支持多种模型,官网下载安装后,直接在对话框描述你的需求, 比如,我这里需求是帮我按照ui设计图,帮我生成小程序页面: A. 上传磨刀或蓝狐页面设计图,例如:蓝湖选中…...
颈源性耳鸣,别当成耳部疾病治
耳朵里嗡嗡响、耳鸣不止,听力不受影响,去耳鼻喉科检查却查不出问题,吃药、调理也没有效果,这种耳鸣很可能不是耳部本身的问题,而是颈椎病变引发的颈源性耳鸣,也是极易被误诊的颈椎并发症。颈椎两侧分布着椎…...
3步解锁Umi-OCR服务化潜能:让自动化文字识别融入工作流
3步解锁Umi-OCR服务化潜能:让自动化文字识别融入工作流 【免费下载链接】Umi-OCR Umi-OCR: 这是一个免费、开源、可批量处理的离线OCR软件,适用于Windows系统,支持截图OCR、批量OCR、二维码识别等功能。 项目地址: https://gitcode.com/Git…...
opencv利用freetype写中文
1、ubuntu需要安装环境 sudo apt install libfreetype6-dev libharfbuzz-dev 2、opencv和opencv_contril编译,勾选下面按钮 3、下载字体库 https://github.com/StellarCN/scp_zh/tree/master/fonts 下载SimHei.ttf 4、代码 #include <opencv2/freetype.hpp…...
