博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
FB面经 Prepare: All Palindromic Substrings
阅读量:5941 次
发布时间:2019-06-19

本文共 1539 字,大约阅读时间需要 5 分钟。

Given a string, calculate how many substring is palindrome. Ignore non-char characters. Ignore case;Ex: "A@,b123a", equals "Aba", should output 4: "A", "b", "a", "Aba"

 

Spread from center: Like LC 5: longest palindromic substring

1 package fb; 2  3 public class Palindrome { 4     public int countSubStr(String input) { 5         if (input==null || input.length()==0) return 0; 6         int res = 0; 7         for (int i=0; i
=0 && r
=0 && !isAlpha(s, l)) l--;19 while (r
=s.length() || !isSame(s, l, r)) break;21 else {22 res++;23 l--;24 r++;25 }26 }27 return res;28 }29 30 public boolean isAlpha(String s, int i) {31 char c = s.charAt(i);32 if (c>='a' && c<='z' || c>='A' && c<='Z') return true;33 return false;34 }35 36 public boolean isSame(String s, int l, int r) {37 char ll = s.charAt(l);38 char rr = s.charAt(r);39 ll = Character.isUpperCase(ll)? (char)(ll-'A'+'a') : ll;40 rr = Character.isUpperCase(rr)? (char)(rr-'A'+'a') : rr;41 return ll==rr;42 }43 44 /**45 * @param args46 */47 public static void main(String[] args) {48 // TODO Auto-generated method stub49 Palindrome sol = new Palindrome();50 String input = "A@,b123a";51 //String input = "Aba";52 int res = sol.countSubStr(input);53 System.out.println(res);54 55 }56 57 }

 

转载地址:http://ehmtx.baihongyu.com/

你可能感兴趣的文章
sae上部署第一个站
查看>>
谈谈你对摩尔定律的理解,摩尔定律当前还是继续有效的吗?
查看>>
mysql dblink 链接mysql库
查看>>
grub resource>unknown filesystem异常处理
查看>>
ways of make process to background job
查看>>
【译】①JWS之Java[tm] Web Start开发者指南目录
查看>>
Oracle date 和 timestamp 区别
查看>>
backtrack笔记本无法用Fn调亮度
查看>>
20返回指针的函数与指向函数的指针
查看>>
域名无法加入域解决方法
查看>>
sql instr()与LOCATE()字符串查找函数
查看>>
linux查看内核版本、系统版本、系统位数(32or64)
查看>>
Hibernate:映射文件元素属性说明
查看>>
ethtool 命令详解
查看>>
函数作为变量,类型---golang
查看>>
运维自动化的哲学
查看>>
shell-while循环
查看>>
Flink State和容错机制
查看>>
粗略的看下两款Linux下的性能分析工具
查看>>
Eclipse中使用SVN
查看>>