看到一个哥们G家电面试题,求删除最少字符生成Palindrome。大神们都在讨论dp,我完全想不到。

放一个没优化的DFS。 乐神说是O(n3)复杂度, 有机会的话要减少使用substring,并且要想一想能否使用memorization

private static String findPalin(String s) {
if (s.length() == 1) return s;
int lo = 0, hi = s.length() - 1;
if (s.charAt(lo) == s.charAt(hi)) {
return s.charAt(lo) + findPalin(s.substring(1, s.length() - 1)) + s.charAt(hi);
} else {
String back = findPalin(s.substring(1));
String front = findPalin(s.substring(0, s.length() - 1));
return back.length() > front.length() ? back : front;
}
}

最新文章

  1. NoSQL初探之人人都爱Redis:(3)使用Redis作为消息队列服务场景应用案例
  2. C# 热敏打印机 Socket 网络链接 打印 图片 (二)
  3. max server memory
  4. iOS基于MBProgressHUD的二次封装,一行搞定,使用超简单
  5. 分词工具ICTCLAS5.0使用心得
  6. 第二次正式java web开发项目的总结(回收站恢复)
  7. 配置cwrsync实现windows2008和centos7文件定时同步
  8. B. Pasha and String
  9. ural 1297(后缀数组+RMQ)
  10. 【转】教你爱上Blocks(闭包)
  11. java--ThreadPool线程池简单用法
  12. leetcode解析回文子串拆分
  13. Android的FrameLayout使用要注意的问题
  14. C# 10分钟完成百度人脸识别——入门篇
  15. 解决ajaxfileupload上传文件在IE浏览器返回data为空问题
  16. springboot 添加 jsp支持
  17. 计算kdj
  18. Java知多少(13)流程控制
  19. 内部排序->归并排序->2-路归并排序
  20. Unity查找子物体的方式-怎么查找GameObject

热门文章

  1. odoo 模型继承
  2. String、StringBuffer和StringBulder
  3. 关于H5在移动端架构的优化设计总结
  4. POJ.1769.Minimizing maximizer(线段树 DP)
  5. java.lang.IllegalStateException: Illegal access
  6. 在linux上安装tomcat
  7. 喵哈哈村的魔法考试 Round #15 (Div.2) 题解
  8. Chrome上网问题解决记录
  9. ImageMagick简单记录
  10. 体验jQuery和AngularJS的不同点以及AngularJS的迷人之处