leetcode-回文类题-647-求字符串中 回文子串 的数目

1、回文子串-647

题目:

给你一个字符串 s ,请你统计并返回这个字符串中 回文子串 的数目。

回文字符串 是正着读和倒过来读一样的字符串。

子字符串 是字符串中的由连续字符组成的一个序列。

示例 1:

复制代码
输入:s = "abc"
输出:3
解释:三个回文子串: "a", "b", "c"

示例 2:

复制代码
输入:s = "aaa"
输出:6
解释:6个回文子串: "a", "a", "a", "aa", "aa", "aaa"

思路:找出回文中心 向两边延申,判断是否是回文字符串,每移动一次res++;这是因为aca是回文子串,bacab也是回文子串,且要考虑边界值,使用方括号 [] 访问超出范围的索引会返回 undefined。要用charAt去处理l和r为负数的情况

题解:

javascript 复制代码
var countSubstrings = function(s){
  let res = 0;
  let n = s.length;
for(let i = 0;i<2*n-1;i++){            //对于字符串s有2n-1的回文中心
  let l = i/2;
  let r = i/2+i%2;
if(s.charAt(l)==s.charAt(r)&&l>=0&&r<n){
  res++;
  l++;
  r--;
}
}
return res;
}
相关推荐
IMPYLH10 分钟前
Linux 的 comm 命令
linux·运维·算法
薛定谔的悦19 分钟前
嵌入式设备OTA升级实战:从MQTT命令到自动重启的全流程解析
linux·算法·ota·ems
好家伙VCC22 分钟前
# 发散创新:用 Rust构建高性能游戏日系统,从零实现事件驱动架构 在现代游戏开发中,**性能与可扩展性**是核心命题。传统基于
java·python·游戏·架构·rust
爱笑的源码基地29 分钟前
门诊his系统源码,中西医结合的数字化门诊解决方案
java·spring boot·源码·二次开发·门诊系统·云诊所系统·诊所软件源码
庞轩px30 分钟前
缓存Key设计的“七要七不要”
java·jvm·redis·缓存
小璐资源网30 分钟前
Java 21 新特性实战:虚拟线程详解
java·开发语言·python
SimonKing42 分钟前
全网爆火的OpenClaw保姆级教程Linux版,它来了。
java·后端·程序员
于慨1 小时前
tauri
java·服务器·前端
WZTTMoon1 小时前
从互斥锁到无锁,Java 20年并发安全进化史
java·python·安全
2501_918126911 小时前
学习所有6502写游戏控制器的语句
java·linux·网络·汇编·嵌入式硬件