leetcode刷题(第647题)——回文子串
一、题目
给你一个字符串 s ,请你统计并返回这个字符串中 回文子串 的数目。回文字符串 是正着读和倒过来读一样的字符串。子字符串 是字符串中的由连续字符组成的一个序列。具有不同开始位置或结束位置的子串,即使是由相同的字符组成,也会被视作不同的
子串。
二、示例
输入:s = "abc"
输出:3
解释:三个回文子串: "a", "b", "c"
输入:s = "aaa"
输出:6
解释:6个回文子串: "a", "a", "a", "aa", "aa", "aaa"
三、思路
1、这题还是比较简单的。分为两种情况,一种是奇数个字符串构成,另一种是偶数个字符串构成,所以此时我们应该分开讨论。
2、我们遍历全部的节点,然后执行rec函数,传入rec(i , i)和rec(i, i +1),然后在执行的过程中不断累加nums,如果遇到两者不相等的情况,则直接break退出循环即可。
四、代码
/*** @param {string} s* @return {number}*/
var countSubstrings = function (s) {let count = 0let len = s.lengthfor (let i = 0; i < len; i++) {let left = ilet right = iwhile (s[left] && s[right] && s[left] === s[right]) {count++left--right++}left = iright = i + 1while (s[left] && s[right] && s[left] === s[right]) {count++left--right++}}return count
};
五、总结
leetcode刷题(第647题)——回文子串相关推荐
- 最长回文串_LeetCode解析,第五题:最长回文子串
LeetCode第五题:最长回文子串 5: 英文题面: Given a string s, find the longest palindromic substring in s. You may a ...
- 牛客题霸 [ 最长回文子串] C++题解/答案
牛客题霸 [ 最长回文子串] C++题解/答案 题目描述 对于一个字符串,请设计一个高效算法,计算其中最长回文子串的长度. 给定字符串A以及它的长度n,请返回最长回文子串的长度. 题解: 两个方法: ...
- leetcode题库5-- 最长回文子串
给定一个字符串 s,找到 s 中最长的回文子串.你可以假设 s 的最大长度为 1000. 示例 1: 输入: "babad" 输出: "bab" 注意: &qu ...
- LeetCode:Longest Palindromic Substring 最长回文子串
Given a string S, find the longest palindromic substring in S. You may assume that the maximum lengt ...
- leetcode 5 查找最长的回文子串
给定一个字符串 s,找到 s 中最长的回文子串.你可以假设 s 的最大长度为 1000. 示例 1: 输入: "babad" 输出: "bab" 注意: &qu ...
- 【LeetCode 5-中等】最长回文子串(高清截图)
5. [中等]最长回文子串 https://leetcode-cn.com/problems/longest-palindromic-substring/ 给你一个字符串s,找到s中最长的回文子串. ...
- 【LeetCode笔记】5.最长回文子串(Java、动态规划、字符串)
文章目录 题目描述 解法 & 代码: 思路 题目描述 回文:正着念和倒着念一样. 解法 & 代码: 一开始看到子串,想着可能no.3最长重复子串一样用滑动窗口.不过回文串的判断会很麻烦 ...
- 力扣刷题 5. 最长回文子串 出现的小问题 addition of unsigned offset to 0x7ffd110e96c0 overflowed to 0x7ffd
参考题解 中心扩散法时,给出的代码是Java 用c++尝试编写出现 Line 1065: Char 9: runtime error: addition of unsigned offset ...
- LeetCode琅琊榜第二层-最长回文子串问题(动态规划)
LeetCode_5.最长回文字串 难度:中等 关注博主,持续输出优质算法内容 题目链接 目录 1.暴力求解法
- Leetcode:5.longest-palindromic-substring(最长回文子串)
这道题挺难的,暴力法固然爽,但是仍会超时,优化后也是,可能优化不够把: 从0 - length-1用中心扩展法能保证比暴力法O(n^3)低; 好像官网还给出三个方法,有时间可以细琢磨: #includ ...
最新文章
- Git 修改用户名和邮箱
- java日历教程_JAVA Calendar方法使用基础教程详解
- python3下载安装windows教程-Python3入门笔记(1) —— windows安装与运行
- 【Android 组件化】路由组件 ( 使用 JavaPoet 生成路由表类 )
- 常考数据结构与算法:判断二叉树是否对称(迭代法,递归法)
- header(Content-Type:text/html;charset=utf-8);
- 随机过程:高斯函数导数、梯度
- 【APICloud系列|12】ios真机调试时如何添加新设备的udid?
- 5g pdu session_运营商下架4G套餐,用户被5G!
- AI 崛起,科学家的天下,程序员的谢幕
- 在wp7中读取XML的配置文件,Content与Resource的区别
- (93)异步FIFO结构,为什么用格雷码? ,面试必问(十七)(第19天)
- python中属性与方法_python中属性和方法的动态绑定
- php数组 是什么意思,php数组是什么意思 - php完全自学手册 - php中文网手册
- 阿铭Linux_网站维护学习笔记20190417
- 【CCPC】2022年绵阳站部分题解(ACGM)
- 查看微信公众号的二维码
- 一文读懂天翼物联网平台(AIoT)
- postman断言—Chai.js语法总结
- DP问题之01背包如此简单