- 博客(6)
- 收藏
- 关注
原创 Manacher算法
Manacher算法问题场景假设字符串str长度为N,想返回最长回文子串的长度回文即是指字符串具有对称性,从头到尾遍历和从尾到头遍历结果相同 如“123321” 或 “abc1cba”就是典型的回文子串解决思路前置知识暴力解决的方式,就是从字符串str的第一个元素开始,向两边扩张,到第i个元素时,如果str[i-1] == str[i+1] 那么说明符合回文条件,可以继续扩张。这么做的问题是,可以解决“12321”这种字符串,但是遇到“123321”这种中间是两个数的就会出问题。为了解决上述问
2020-05-30 22:35:23 121
原创 JDBC标准流程
JDBCjava database connectivity职责:java:客户端:接收数据、拼接sql、发送sql、分析结果、返回结果browserdb:服务器:接收sql、分析处理、返回结果给javaJDBC使用:1、加载驱动Class.forName("com.mysql.jdbc.Driver");SPI机制,JDK内置的一种服务提供发现机制执行当前代码之后,返回一个class对象,在此对象的创建过程中,会调用具体类的静态代码块,将Driver对象注册到DriverManag
2020-05-13 20:58:46 145
原创 Arrays.asList一个小坑
使用工具类Arrays.asList()把数组转为集合时,Arrays.asList()返回的ArrayList对象但是这个ArrayList类不是java.util.ArrayList类 而是Arrays的静态内部类其中使用了适配器模式,实现部分集合的方法,但由于底层仍然是数组,因此没有实现能改变原数组大小的方法比如add,remove所以在直接调用时,会抛出UnSupportedOperationException的异常一下为jdk源码有关此部分的注释* <p>The return
2020-05-13 20:57:32 116
原创 归并排序和基数排序的实现思路
归并排序大问题 ------------------->小问题 【分而治之】递归实现process(int[] arr,int L,int R)递归行为 功能:实现数组array[L…R]有序 base case :L== R(此时数组中只有一个元素 到了递归的最后一层)merge(int[] arr,int L,int M,int R)分而治之的思路 功能:把数组分为左右两部分 将两部分merge到一起 实现:定义一个与原数组等长度的辅助数组help定义左指针p
2020-05-13 20:51:02 150
原创 java中static用法总结
1.定义静态变量一般形式: [访问修饰符] static [变量类型] [变量名] = [值]注:【访问修饰符】主要包含 public 、protected、default、private (访问权限依次降低)举例: public class Penguin { public static String SEX_FAMALE = "雌"; publi...
2020-03-03 22:36:10 115
原创 循环之九九乘法表四开花
众所周知,for循环中的经典应用场景就是打印九九乘法表 作为我的第一篇博客总结一下四种方向的九九乘法表,以加深对for循环语句的理解~标准形式(下台阶式)for(int i=1;i<=9;i++){ for(int j=1;j<=i;j++){ System.out.print(i+"*"+j+"="+i*j+"\t"); } System.out.pr...
2020-03-02 23:43:12 744
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人