• LeetCode题解之Longest Palindromic Substring


    1、题目描述

    2、问题分析

    计算每个字符所组成的字符串的回文子串。

    3、代码

     1 string longestPalindrome(string s) {
     2         
     3         int maxL = 0;
     4         int index = 0;
     5         bool is_odd = false ;
     6         string res ;
     7         if( s.size() == 0){
     8             return res;
     9         }
    10         
    11         for( int i = 0; i < s.size() ; i++){
    12             int n_odd = countLenOfPra(s ,i, i);
    13             int n_even = countLenOfPra(s, i ,i+1);
    14             
    15             if(n_odd > maxL ){
    16                 maxL = n_odd;
    17                 index = i;
    18                 is_odd = true;
    19             }
    20             if(n_even > maxL){
    21                 maxL = n_even;
    22                 index = i;
    23                 is_odd = false;
    24             }
    25         }
    26         
    27         if( is_odd ){
    28             res = subPralid(s, index , index);
    29         }else{
    30             res = subPralid(s, index , index+1);
    31         }        
    32         return res;
    33     }
    34     
    35     
    36     
    37     int countLenOfPra(string s ,int l ,int r){
    38         
    39         while( l >=0 && r < s.size() && s[l] == s[r]){
    40             l--;
    41             r++;
    42         }
    43         int len = r-l+1;
    44         
    45         return len;
    46     }
    47     
    48     string subPralid(string s ,int l , int r){
    49         string rs ;
    50         while(l >= 0 && r < s.size() && s[l] == s[r]){
    51             l--;
    52             r++;
    53         }
    54         l += 1;
    55         r -= 1;
    56         rs = s.substr(l,r-l+1);
    57         return rs;
    58     }
    pp
  • 相关阅读:
    final关键字的用法
    多态的理解
    5.13会话技术Cookie---Session
    5.13Junit单元测试-反射-注解
    5.13redis的相关基础
    5月13号
    5.13redis图形化工具---idea中配置redis密码
    5.13谢谢原文博主
    5.13微信登录维护态与获取用户信息思想
    5.12redis
  • 原文地址:https://www.cnblogs.com/wangxiaoyong/p/9579636.html
Copyright © 2020-2023  润新知