记录每日LeetCode 2697.字典序最小回文串 Java实现

题目描述:

给你一个由 小写英文字母 组成的字符串 s ,你可以对其执行一些操作。在一步操作中,你可以用其他小写英文字母 替换  s 中的一个字符。

请你执行 尽可能少的操作 ,使 s 变成一个 回文串 。如果执行 最少 操作次数的方案不止一种,则只需选取 字典序最小 的方案。

对于两个长度相同的字符串 ab ,在 ab 出现不同的第一个位置,如果该位置上 a 中对应字母比 b 中对应字母在字母表中出现顺序更早,则认为 a 的字典序比 b 的字典序要小。

返回最终的回文字符串。

初始代码:

class Solution {public String makeSmallestPalindrome(String s) {}
}

示例1:

输入:s = "egcfe"
输出:"efcfe"
解释:将 "egcfe" 变成回文字符串的最小操作次数为 1 ,修改 1 次得到的字典序最小回文字符串是 "efcfe",只需将 'g' 改为 'f' 。

示例2:

输入:s = "abcd"
输出:"abba"
解释:将 "abcd" 变成回文字符串的最小操作次数为 2 ,修改 2 次得到的字典序最小回文字符串是 "abba" 。

示例3:

输入:s = "seven"
输出:"neven"
解释:将 "seven" 变成回文字符串的最小操作次数为 1 ,修改 1 次得到的字典序最小回文字符串是 "neven" 。

参考答案:

class Solution {public String makeSmallestPalindrome(String s) {// 为了修改字符串里边的内容 既可以采用StringBuilder拼接也可以转为数组进行操作// 如果不知道字符串的toCharArray()方法 就只能采用拼接了 因为用replce()方法也不合适char[] c = s.toCharArray();// 双指针思路解决回文问题int left = 0, right = s.length() - 1;while (left < right) {if (c[left] != c[right]) {c[left] = c[right] = (char) Math.min(c[left], c[right]);}left++;right--;}return new String(c);}
}

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2023-12-12 AIGC-AI在理解用户提问时的局限性和误解领域

摘要: 2023-12-12 AIGC-AI在理解用户提问时的局限性和误解领域 AI在理解用户提问时的局限性和误解领域 局限性: AI在理解用户提问时的局限性和误解领域是多方面的&#xff0c;这些限制通常源于技术的本质、训练数据的特性以及AI模型的设计。下面详细讨论这些方面&#xff1a;…

【机器学习】亚马逊云科技基础知识:以推荐系统为例。你知道机器学习的关键所在么?| 机器学习管道的各个阶段及工作:以Amazon呼叫中心转接问题为例讲解

有的时候,暂时的失利比暂时胜利要好得多。 ————经典网剧《mao pian》,邵半仙儿 🎯作者主页: 追光者♂🔥 🌸个人简介: 💖[1] 计算机专业硕士研究生💖 🌿[2] 2023年城市之星领跑者TOP1(哈尔滨)🌿 🌟[3] 2022年度博客之星人工智能领域TOP

正交基概念

求正交向量组中的系数 考虑 n n n 个任意两个向量之间相互正交的 n n n 维向量 a ⃗ \vec a a &#xff0c;则其构成一个 n n n 维的欧几里得空间 R n R^n Rn&#xff0c;为其中的每一个向量赋予一个常数系数 c c c&#xff0c;则空间中的任意向量 v v v 可以表示为这组…

大象慧云:从设立分部到迁移总部 与贵阳贵安共筑税务数字化未来

近年来&#xff0c;贵阳贵安着力提升政务服务水平&#xff0c;通过擦亮“贵人服务”品牌&#xff0c;持续优化营商环境。在这样的环境下&#xff0c;再加上“大数据基因”&#xff0c;对于希望在大数据领域大展拳脚的企业来说&#xff0c;贵阳贵安无疑成为了一个极具吸引力的选…

swiper播放视频,完成后自动切换下一张

video 属性和事件用法大全&#xff1a; https://www.cnblogs.com/rogerwu/p/10072119.html 我的思路是监听视频播放进度&#xff0c;如果播放完毕再开启swiper的自动轮播&#xff0c;因为我的需求是只有第一个swiper才是视频&#xff0c;后边的都是图片&#xff0c;那就需要轮…

【ZYNQ】AXI4总线接口协议学习

建议翻看着底部的参考文档资料和本文一起辅助阅读 本文带你详细的了解AXI总线协议&#xff0c;并且基于官方手册&#xff0c;能够提高你的手册阅读能力。 什么是AXI AXI 的英文全称是 Advanced eXtensible Interface&#xff0c;即高级可扩展接口&#xff0c;它是 ARM 公司所提…

自激活T细胞为肿瘤免疫治疗提供新思路—高分文献分享

CD28是在所有小鼠和人类T细胞上表达的共刺激受体&#xff0c;用来调节T细胞受体(TCR) 的响应。异常的CD28 信号传导是癌症、自身免疫和病毒感染中T细胞功能障碍的决定性特征之一。早期的一些研究表明CD28对CD4 T细胞更重要&#xff0c;但也有越来越多的研究者发现其对CD8 T细胞…

HAT(CVPR 2023):Hybrid Attention Transformer for Image Restoration

HAT ​ 论文地址&#xff1a;HAT: Hybrid Attention Transformer for Image Restoration ​ 代码地址&#xff1a;XPixelGroup/HAT: CVPR2023 - Activating More Pixels in Image Super-Resolution Transformer 摘要 ​ 通过归因分析attribution analysis method - Local …

JavaScript中页面位移、大小和位置属性整理

&#x1f91e;&#x1f91e; 一、window window 滚动位移属性 window.scroll(X,Y) 滚动数不叠加window.scrollTo(X,Y) 滚动数不叠加window.scrollBy(X,Y) 滚动数叠加window.scrollY / Firefox、Chrome、Opera均支持&#xff0c;IE不支持 忽略DOCTYPE定义规则 window窗口大小…

智能科技企业网站搭建的作用是什么

随着科学技术快速提升&#xff0c;各种智能产品随之而来&#xff0c;每个赛道里都涌入了大量企业商家&#xff0c;有些热门产品更是广受关注&#xff0c;对企业来说&#xff0c;形象、品牌、信息等方面需要完美呈现到用户眼前&#xff0c;而网站无疑是很好的工具。 企业通过【…

lwIP 细节之四:recv 回调函数是何时调用的

使用 lwIP 协议栈进行 TCP 裸机编程&#xff0c;其本质就是编写协议栈指定的各种回调函数。将你的应用逻辑封装成函数&#xff0c;注册到协议栈&#xff0c;在适当的时候&#xff0c;由协议栈自动调用&#xff0c;所以称为回调。 注&#xff1a;除非特别说明&#xff0c;以下内…

element-ui 重置resetFields()不生效

element-ui 重置resetFields()不生效 初始化数据 data() {return {dialogVisible: false,form: {name: ,age: ,sex: ,birth: ,addr: }}}弹窗关闭重置数据 handleClose() {// 弹窗关闭的时候清除数据this.$refs.form.resetFields()this.dialogVisible false }以上操作this.$…

常用whl文件地址整理

文章目录 一、Deep Graph Library&#xff08;DGL&#xff09;二、torch torchvision torchaudio三、numpy四、pandas可留言其他whl文件地址&#xff0c;不定期更新 一、Deep Graph Library&#xff08;DGL&#xff09; DGL是一个专门用于深度学习图形的Python包, 一款面向图神…

代码随想录算法训练营第50天| 123.买卖股票的最佳时机III 188.买卖股票的最佳时机IV

JAVA代码编写 123.买卖股票的最佳时机III 给定一个数组&#xff0c;它的第 i 个元素是一支给定的股票在第 i 天的价格。 设计一个算法来计算你所能获取的最大利润。你最多可以完成 两笔 交易。 **注意&#xff1a;**你不能同时参与多笔交易&#xff08;你必须在再次购买前出…

HDPE硅芯管材具有优异的耐腐蚀性、耐磨损性和耐老化性

HDPE硅芯管材作为一种优质的管道材料&#xff0c;具有许多突出的性能。其中&#xff0c;其优异的耐腐蚀性、耐磨损性和耐老化性是其主要特点之一。 首先&#xff0c;HDPE硅芯管材具有出色的耐腐蚀性。它的高密度聚乙烯&#xff08;HDPE&#xff09;材料具有良好的耐腐蚀性能&a…

2023快速上手新红利项目:短剧分销推广CPS

短剧分销推广CPS是一个新红利项目&#xff0c;对于新手小白来说也可以快速上手。 以下是一些建议&#xff0c;帮助新手小白更好地进行短剧分销推广CPS&#xff1a; 学习基础知识&#xff1a;了解短剧的基本概念、制作流程和推广方式。了解短剧的市场需求和受众群体&#xff0c…

Django视图

一、url路由 自上而下的&#xff0c;如果匹配的路由中是包含int转换器&#xff0c;则不能匹配其他的不是int的相关字符&#xff0c;譬如文字等&#xff1b; 自定义路由转换器&#xff1a; 1、创建一个converter.py的文件&#xff1b; 2、再写一个类&#xff1a; class FourDig…

安卓手机上的软件的安装

本文主要介绍以下怎么在adb下安装软件。 一、首先还是要有安装包。 二、在adb链接上手机之后&#xff0c;使用adb install "软件包绝对路径“ 进行软件的安装。 如果出现问题&#xff0c;可以逐个排除 1.如果adb shell进入后发现可以连上&#xff0c;那就说明手机已经…

使用 std::vector 和 std::pair 管理二维点对

赋值 向 matched_indices 赋值意味着在这个向量中添加 std::pair<int, int> 类型的元素。每个元素都是一个包含两个整数的对。这可以通过使用 push_back 方法实现&#xff1a; matched_indices.push_back(std::make_pair(1, 2)); // 添加一个元素&#xff0c;其中包含一…

STM32F030C8读取CS1237采集模拟

STM32F030C8读取CS1237采集模拟 Chapter1 【问题解决记录】STM32F030C8读取CS1237采集模拟问题描述原因分析&#xff1a;解决方案&#xff1a; Chapter2 CS1237 STM32控制程序以及原理图需要注意事项 Chapter1 【问题解决记录】STM32F030C8读取CS1237采集模拟 原文链接&#x…