千家信息网

Java字符串举例分析

发表于:2025-02-03 作者:千家信息网编辑
千家信息网最后更新 2025年02月03日,本篇内容介绍了"Java字符串举例分析"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Example
千家信息网最后更新 2025年02月03日Java字符串举例分析

本篇内容介绍了"Java字符串举例分析"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

Example 1:

Input: "babad"Output: "bab"Note: "aba" is also a valid answer.

Example 2:

Input: "cbbd"Output: "bb"

解题思路1 比较简单易懂,不过对于连续重复的字符串存在耗时操作

解题思路2 是将连续重复字符串看成一个整体了,比如 abbba 下表是01234 相同的不比较了,直接比较相同的左边跟右边

class Solution:    def getTmpAns(self,s,l,r):        size = len(s)        while l>=0 and r len(ans):                ans = tmpAns            tmpAns = self.getTmpAns(s,i,i+1)            if len(tmpAns) > len(ans):                ans = tmpAns        return ans            def _longestPalindrome(self, s):        """        :type s: str        :rtype: str        """        size = len(s)        if size == 1 or size == 0:            return s        if size == 2:            if s[0] == s[1]:                return s            else:                return s[0]        i = 0        maxp = 1        ans = s[0]        while i < size:            j = i+1            while j < size: # let same num as a item  like bbb,i是左边起始位置 j是右边起始位置                if s[i] == s[j]:                    j += 1                else:                    break            k = 0            while i-k-1>=0 and j+k maxp:                maxp = j+k-i+k                ans = s[i-k:j+k]            if j+k == size-1:                break            i = j        return ans

"Java字符串举例分析"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

0