当前位置: 首页 > article >正文

Rust 力扣 - 5. 最长回文子串

文章目录

  • 题目描述
  • 题解思路
  • 题解代码
  • 题解链接

题目描述

在这里插入图片描述

题解思路

从中心点先寻找和中心点相等的左右端点,在基于左右端点进行往外扩散,直至左右端点不相等或者越界,然后左右端点这个范围内就是我们找寻的回文串,我们遍历中心点,就能执行上述流程就能查询所有的回文串,我们只需要取其中的最长的回文子串即可

题解代码

impl Solution {
    pub fn longest_palindrome(s: String) -> String {
        let s = s.as_bytes();

        let mut left = 0;
        let mut right = 0;
        
        let mut i = 0;

        while i < s.len() {
            let mut l = i;
            let mut r = i;

            while l > 0 && s[l - 1] == s[i] {
                l -= 1;
            }

            while r + 1 < s.len() && s[r + 1] == s[i] {
                r += 1;
            }

            let mut offset = 1;
            while l >= offset && r + offset < s.len() && s[l - offset] == s[r + offset] {
                offset += 1;
            }

            offset -= 1;

            if r - l + (offset << 1) > right - left {
                left = l - offset;
                right = r + offset;
            }

            i = r + 1;
        }

        String::from_utf8(s[left..right + 1].to_vec()).unwrap()
    }
}

题解链接

https://leetcode.cn/problems/longest-palindromic-substring/


http://www.kler.cn/a/369658.html

相关文章:

  • docker配置mysql并使用mysql connector cpp编程
  • Redis --- 分布式锁的使用
  • 工作总结:压测篇
  • Visual Studio使用GitHub Copilot提高.NET开发工作效率
  • postgresql的用户、数据库和表
  • Ubuntu-手动安装 SBT
  • [ vulnhub靶机通关篇 ] 渗透测试综合靶场 DC-7 通关详解 (附靶机搭建教程)
  • PostgreSQL的奥秘:从Read-through到Write-around的缓存机制
  • 什么是服务器?服务器与客户端的关系?本地方访问不了网址与服务器访问不了是什么意思?有何区别
  • Spark 之 SparkListenerBus
  • DDRPHY数字IC后端设计实现系列专题
  • 从头学PHP之数组输出基本函数
  • 【Python】一文总结Python中常见错误 异常及异常处理机制
  • 【zotero7】茉莉花抓取文献失败解决方案
  • ctfshow(151->154)--文件上传漏洞--.user.ini
  • 算法通关(2)--单调队列
  • 使用Pandas进行时间序列分析的11个关键点!
  • 安装pygod
  • Python3+Requests+Excel完整接口自动化测试框架的实现
  • 学生宿舍管理智能化:Spring Boot系统探索
  • FIPG-Frontiers in Pharmacology
  • LINQ在数据库中的应用:LINQ to SQL 和 Entity Framework
  • 深度学习:YOLO V3 网络架构解析
  • centos系统安装oracle数据库教程(linux命令行安装)
  • kafka消息队列
  • Github 2024-10-22 Python开源项目日报Top10