- 博客(18)
- 收藏
- 关注
原创 Leetcode1143最长公共子序列LCS和最长公共子串
public static int longestCommonSubsequence(String text1, String text2) { int m = text1.length(); int n = text2.length(); //dp[i][j]表示的是,test1的前i个字符和test2的前j个字符的最大公共子串 //防止出现边界问题,所以字符串前面都相当与加一个0 int[][] dp = new i...
2022-01-11 18:36:52 123
原创 Leetcode14字符串的最长公共前缀
/** * @author tangshiyun * Created on 2022-01-11 */public class LongestCommonPrefix { public static void main(String[] args) { String[] strs = new String[]{"we","wgfds","wqfsaxcv"}; System.out.println(longestCommonPrefix(strs));
2022-01-11 11:40:17 215
原创 Leetcode054
054 螺旋矩阵public class SpiralOrder054 { public static void main(String[] args) { // 正确顺序:123698745 int[][] matrix = new int[][]{{1,2,3},{4,5,6},{7,8,9}}; List<Integer> res = spiralOrder(matrix); for(Integer order :
2022-01-10 20:50:48 251
原创 Java学习笔记----如何保证线程安全
如何保证线程安全文章目录如何保证线程安全前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):import n
2022-01-04 20:28:35 1318
原创 面试题----二叉树的层序遍历以及变种题目
二叉树层序遍历:直接打印list//二叉树的层序遍历 //用一个队列,先将根节点放入 // 队列不空的时候就将第一个节点输出打印,这个节点的左子树不空时,将左节点入队,右子树不空时就将右节点入队 private static ArrayList<Integer> help(TreeNode root){ ArrayList<Integer> res = new ArrayList<>(); Queue<Tre
2020-09-27 23:42:22 308
原创 Java学习笔记----静态代理和动态代理
什么是代理?本质上说,相当于我们平时租房子的中介,屏蔽掉了你与房主之间的联系,直接给你提供租房服务。有的人有好多套房子,这个人就相当于是一个目标类,这个中介就是代理类,我们使用代理类就可以调用目标类的方法。代理类封装了目标类,相当于中介有房主的这些房子的信息,我们直接找中介就可以租到房子。我们通过中介,甚至还可以看其他房主的房子,也就是通过代理类调用其他类的方法,相当于实现了给目标类扩展新功能而不需要修改目标类的代码,这样一定程度上可以实现解耦。Java中的代理有两种:静态代理:手写代理类将目标类封
2020-09-26 23:24:00 97
原创 Java学习笔记----抽象类和接口
什么是抽象类?抽象类,是普通类和接口之间的中庸之道---------Java编程思想定义:包含抽象方法的类就是抽象类作用:抽象类可以使类的抽象性明确起来,并告诉用户和编译器打算怎样来使用他们。使用:比如狗类、猪类、猫类这三个类,具有一些共性,都可以吃和跑,那么我们可以将这一共性写入抽象类中,如下:public abstract class animal { public abstract void eat(); public abstract void run();}注意:
2020-09-23 23:39:01 449
原创 Java学习笔记----反射
什么是反射?既然有一“反”字,那么必有正。何谓正?一般我们想要使用一个类,会先知道他的名字,是做什么的,然后实例化得到一个对象,对类对象进行操作。//正,知道类是什么类,创建类对象,使用对象的方法 Man man = new Man(); man.setName("小红"); System.out.println("这个人的名字叫: " + man.getName());那么反,就是不知道是什么类,仅仅通过字符串在运行时获取类的完整构造,并调用相应的
2020-09-22 22:40:24 100
原创 Java学习笔记-匿名类,静态内部类,静态类,以及类限定词等
Java是面向对象的语言,对象的模板就是类类本身有static修饰的静态类,和没有static修饰的非静态类(普通类)静态类特点:全局唯一,任何一次修改都是全局的修改只加载一次,优先级高于非静态类静态类不能被实例化,使用时候不需要依赖于实例对象生命周期和jvm生命周期相同普通类和静态类的区别:静态类不需要有指向外部类的引用,但普通类需要有静态类不能访问外部类的非静态成员,但普通类可以访问外部类的静态和非静态成员静态类不用先创建外部类,普通类不能脱离外部类实体被创建,就是必须先实例化
2020-09-19 23:21:55 260 1
原创 基于Hugo搭建个人博客并部署到远程github仓库
1 C:\Users>hugo versionHugo Static Site Generator v0.70.0-7F47B99E windows/amd64 BuildDate: 2020-05-06T11:17:50Z2 C:\Users>hugo new site myblog //创建Hugo个人站点Congratulations! Your new Hugo site is created in C:\Users\myblog.3 C:\Users>cd myblog/
2020-05-19 19:29:38 532
原创 常见数据结构及面试常见代码题(1)
数组基本操作:插入、删除、返回指定位置的元素、得到数组所有元素的数量。面试常见问题:寻找数组第k大的数字找到数组中第一个不重复的整数合并两个有序数组重新排列数组中的正值和负值栈应用:撤销操作基本操作:Push 顶部插入Pop 移除栈顶元素isEmpty 栈为空则返回trueTop 返回顶部元素,但不移除面试常见问题:用栈计算后缀表达式对栈的元素进行排序判断表达式是否括号平衡队列应用:银行排队基本操作:Enqueue(): 在队列尾部插入Dequeue()
2020-05-14 10:53:07 271
原创 TCP三次握手和四次挥手
TCP三次握手第一次握手:建立连接时,客户端发送同步序列编号包到服务器,并进入SYN_SENT状态,等待服务器确认;第二次握手:服务器收到同步序列编号包,必须确认客户的SYN同时自己也发送一个SYN包,即SYN+ACK包,此时服务器进入SYN_RECV状态;第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK,此包发送完毕,客户端和服务器进入ESTABLISHED(TCP连接成功)状态,完成三次握手。TCP四次挥手1)客户端进程发出连接释放报文,并且停止发送数据。释放数据报文首
2020-05-11 17:48:51 96
原创 Java多线程
1 操作系统调度的最小任务单位是线程2 创建进程的开销比创建线程大3 进程间通信比线程间通信要慢4 多进程比多线程的稳定性高,多进程中,一个进程崩溃不会影响其他进程,而在多线程情况下,任意个线程崩溃会导致整个进程崩溃5 一个java程序实际上是一个JVM进程,JVM还有负责垃圾回收等其他工作线程6 新线程执行指定代码的两种方法:1 从Thread派生一个类,复写run()方法2 创建...
2020-03-27 23:49:36 93
原创 Java反射
一 Class类1 Java的反射是指程序在运行期可以拿到一个对象的所有信息2 反射的出现原因:为了解决在运行期,对一个实例一无所知的情况下,如何调用其方法。3 反射方法:通过Class的实例获得class的信息4 获取class的Class实例的方法:1 直接通过一个class的静态变量class获取2 通过实例变量提供的getclass()方法3 知道class完整类名,...
2020-03-25 22:55:54 85
原创 Java核心类
一 字符串(string)1 valueOf()会把基本类型或引用类型转换为字符串类型,这是一个重载方法,编译器会根据参数自动选择合适的方法String.valueOf(123)String.valueOf(true)2 字符串类型转为int类型int n1 = Integer.parseInt(“123”)int n2 = Integer.parseInt(“12e”,16) //...
2020-03-20 21:45:20 87
原创 Java this的用法
1 this 用来区分成员变量还是局部变量2 this代表当前对象3 构造器与构造器之间的调用因为不同构造器中存在相同的代码,为了复用性,可以在参数少的构造器中调用参数多的构造器, 用this(参数)4 如果在方法内部调用类的另一个方法,则不必使用this,当前方法中的this会自动应用同一类中的其他方法5 this不能用于静态方法,Main方法是静态的****...
2020-03-20 11:31:07 66
原创 Java overload、override、interface、abstract、static和多态
一 override1 方法签名相同,参数相同,返回值相同则是override2 *用final修饰的方法不能被override.(用final修饰的类也不能被继承,final修饰的字段被初始化后不能再修改)二 overload1 overload是一个新方法,方法签名可以不同,参数可以不同,返回值可以不同三 多态1 运行期才能决定调用的子类方法2 作用:允许添加更多子类进行功...
2020-03-14 22:07:06 166
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人