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;
}
相关推荐
cui_win几秒前
【网络】Linux 内核优化实战 - net.ipv4.tcp_timestamps
linux·网络·tcp/ip
czhc11400756632 分钟前
Linux 77 FTP
linux·运维·服务器
咖啡啡不加糖10 分钟前
暴力破解漏洞与命令执行漏洞
java·后端·web安全
魂尾ac10 分钟前
Centos Docker 安装(100%成功)
linux·docker·centos
风象南13 分钟前
SpringBoot敏感配置项加密与解密实战
java·spring boot·后端
DKPT24 分钟前
Java享元模式实现方式与应用场景分析
java·笔记·学习·设计模式·享元模式
ajassi200025 分钟前
开源 C# .net mvc 开发(八)IIS Express轻量化Web服务器的配置和使用
linux·开源·c#·mvc·.net
Percep_gan32 分钟前
idea的使用小技巧,个人向
java·ide·intellij-idea
缘来是庄32 分钟前
设计模式之迭代器模式
java·设计模式·迭代器模式
Liudef0638 分钟前
基于HTML与Java的简易在线会议系统实现
java·前端·html