2018-08-15-weekly
Algorithm
What 给定一个字符串s,找到s中最长的回文子字符串。 给定s的最大长度为1000。
How 这是一道比较经典的求最大回文子串的题目,算法也有多种,可能一开始都会想到用暴力法,找出所有子串然后进行判断,显然这样的效率是比较低的,本道题如果使用该方法有几个测试例子会出现超时现象。在这里用中心扩展法,从下标 i 出发遍历给定的字符串,用2个指针向 i 的两边扩展来找出最长回文子串,当然也可以使用动态规划在解此题。
Key Codes
class Solution {
public String longestPalindrome(String s) {
if (s.isEmpty()) {
return "";
}
if (s.length() == 1) {
return s;
}
String longest = s.substring(0, 1);
for (int i = 0; i < s.length(); i++) {
String tmp = helper(s, i, i);
if (tmp.length() > longest.length()) {
longest = tmp;
}
tmp = helper(s, i, i + 1);
if (tmp.length() > longest.length()) {
longest = tmp;
}
}
return longest;
}
public String helper(String s, int begin, int end) {
while (begin >= 0 && end <= s.length() - 1
&& s.charAt(begin) == s.charAt(end)) {
begin--;
end++;
}
String subS = s.substring(begin + 1, end);
return subS;
}
}
Review
- What 讲的是在成为开发人员时会遇到哪些其他问题以及相应的解决方法
Tip
- What使用IDEA就可以直接连接数据库查询或修改数据,不需要再单独下载数据库客户端软件了
- How步骤如下:
- 1.打开IDEA软件工具,在工具类的右侧会看到Database图标,点击打开之后,会有一个加号按钮,点击创建一个新的数据库连接
- 2.选择Data Source,然后再选择MySQL或者oracle,这里可以看到支持很多种数据库类型,这里选自己对应使用的数据库类型
- 3.填写连接的数据库host,数据库名称,用户名以及密码,端口如果是mysql默认是3306,如果没有修改保持默认即可
- 4.连接配置信息填写完成之后,点击Test Connection按钮测试连接是否可以正常连接,当出现Connection successful提示即表示测试连接成功,以上配置信息填写正确
- 5.点击确定按钮后就可以开始愉快地在你的IDEA上操作数据库了
- Why一般写代码一般调试数据的时候,可以都在IDEA工具中完成了,不需要再多次切换工具那么麻烦了
Share
- How职场新人如何快速成长
- 一.做人与做事孰轻孰重:
- 1.恰当的时候,以恰当的方式去虚心请教,这是做事的方式;
- 2.不同的阶段,以不同的心态面对工作,这是做人的方式。
- 二.快速学习:
- 1.学会从你的导师那学习解决问题的流程,思路,加上自己的想法,进步地就会快一些;
- 2.学会发散思维,不要局限在你的本职工作,多去看看其他的资料,用发散的眼光看问题;
- 3.踏实一点,循序渐进,不要停留在表明,深入分析。
2018-08-15-weekly的更多相关文章
- 2018.08.15 bzoj3747: [POI2015]Kinoman(线段树)
传送门 简单题. 先不管时间复杂度看看怎么做. 对于一段区间[l,r],如果从右端加入一个数a[r+1],对这个区间有什么影响?显然如果区间中已经有了a[r+1]这个数就会产生-a[i+1]的影响,否 ...
- 2018.08.15【2018提高组】模拟A组 比赛总结
总结 T1 这题我一看,哇!好简单啊! 直接建立每一个字母的映射就可以了. 我很快就打完了程序,跳到下一题. 等到比赛快结束时,我才发现了一个可怕的数据: 1 abcdefghijklmnopqrst ...
- 新手C#构造函数、继承、组合的学习2018.08.06/07
构造函数,是一种特殊的方法.主要用来在创建对象时初始化对象,即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中.特别的一个类可以有多个构造函数,可根据其参数个数的不同或参数类型的不同 ...
- Tencent Cloud Developers Conference(2018.12.15)
时间:2018.12.15地点:北京朝阳悠唐皇冠假日酒店
- Lean Data Innovation Sharing Salon(2018.09.15)
时间:2018.09.15地点:北京国华投资大厦
- Intel Digital Innovation Industry Summit(2018.08.17)
时间:2018.08.17地点:北京金隅喜来登大酒店
- Trusted Cloud Summit(2018.08.14)
时间:2018.08.14地点:北京国际会议中心
- (转)新手C#SQL语句的学习2018.08.13
1.创建数据库(create) CREATE DATABASE database-name 2.删除数据库(drop) drop database dbname 3.备份数据库 --- 创建 备份数据 ...
- 新手C#SQLServer在程序里实现语句的学习2018.08.12
从C#中连接到SQL Server数据库,再通过C#编程实现SQL数据库的增删改查. ado.net提供了丰富的数据库操作,这些操作可以分为三个步骤: 第一,使用SqlConnection对象连接数据 ...
- 新手C#SQL Server使用记录2018.08.10
主键(PrimaryKey):主键就是每个数据行(记录)的唯一标识,不会有重复值的列(字段)才能当做主键.一个表可以没有主键,但是这样会很难处理表,因此一般情况表都要设置主键. 主键有两张选用策略,分 ...
随机推荐
- [洛谷P3939]:数颜色(二分)
题目传送门 题目描述 小$C$的兔子不是雪白的,而是五彩缤纷的.每只兔子都有一种颜色,不同的兔子可能有相同的颜色.小$C$把她标号从$1$到$n$的$n$只兔子排成长长的一排,来给他们喂胡萝卜吃.排列 ...
- uniapp 之navigateTo:fail page 跳转路径不对
开发uniapp,点击列表跳转详情报错 [system] navigateTo:fail page `/pages/tabBar/index/detail/detail?title=uni-app行业 ...
- php WebSocket 简单实现demo
WebSocket 是 HTML5 开始提供的一种在单个 TCP 连接上进行全双工通讯的协议. WebSocket 使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据. 在 ...
- 【转】一个 Vim 重度用户总结的 vim 超全指南
[转]一个 Vim 重度用户总结的 vim 超全指南 我本人是 Vim 的重度使用者,就因为喜欢上这种双手不离键盘就可以操控一切的feel,Vim 可以让我对文本的操作更加精准.高效. 对于未使用过 ...
- 《图解设计模式》读书笔记8-3 STATE模式
目录 State模式 示例程序 实现的功能 不使用&使用状态模式对比 示例程序的类图 代码 角色和类图 角色 类图 拓展思路 分而治之 依赖于状态的处理 谁来管理状态迁移 易于增加新状态 实例 ...
- 记2018最后一次问题诊断-Spark on Yarn所有任务运行失败
2018的最后一个工作日,是在调式和诊断问题的过程中度过,原本可以按时下班,毕竟最后一天了,然鹅,确是一直苦苦挣扎. 废话不多说,先描述一下问题:有一套大数据环境,是CDH版本的,总共4台机子,我们的 ...
- Delphi中堆栈区别
http://blog.csdn.net/zang141588761/article/details/52838728 Delphi中堆栈区别 2016-10-17 14:49 277人阅读 评论( ...
- 读取资源中的GIF文件相应像素宽高度
代码参考了如下网页的实现: https://www.cnblogs.com/zy791976083/p/9921069.html 整理成一个函数: BOOL GetResGifSize(long nR ...
- C#模块初始化注入
这个功能可以实现很多很有用的功能,比如程序集加密,Hook安装等.英文转载备忘. 原地址:https://www.coengoedegebure.com/module-initializers-i ...
- 数论-欧拉函数-LightOJ - 1370
我是知道φ(n)=n-1,n为质数 的,然后给的样例在纸上一算,嗯,好像是找往上最近的质数就行了,而且有些合数的欧拉函数值还会比比它小一点的质数的欧拉函数值要小,所以坚定了往上找最近的质数的决心—— ...