自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 问答 (1)
  • 收藏
  • 关注

原创 面试官:关于MySQL底层数据结构,你敢进来让我面一面吗?

我(心里活动):今天是我第一次面试,不知道面试官会问我什么?求放过,求放过!!叮叮叮叮~~电话声响起!面试官:你好,我是XXX公司的面试官,请问你现在方便面试吗?我:你好,方便的。面试官:好的,你先做个自我介绍吧。我:巴拉巴拉巴拉小魔仙。。。。面试官:(???你倒是变身啊),好的,你刚才在介绍中说了你对MySQL数据库比较熟悉,那你说一下MySQL的底层数据结构。我:好的,对于MySQL的话,其大多数的存储引擎采用的都是B+树这种数据结构,比如我们常用的MyISAM、InnoDB存储引擎;也有

2021-12-26 22:46:09 877

原创 前缀树详解-Java版

文章目录前言一、前缀树介绍一、前缀树的表示1、数组2、Map二、插入总结前言今天在做算法题的时候,遇到了一道用到前缀树这种数据结构的题目,借此机会,写篇博文,记录一下前缀树到底是什么?一、前缀树介绍  前缀树(字典树)是N叉树的一种特殊形式。通常来说,一个前缀树是用来存储字符串的。前缀树的每一个节点代表一个字符串(前缀)。每一个节点会有多个子节点,通往不同子节点的路径上有着不同的字符。子节点代表的字符串是由节点本身的原始字符串,以及通往该子节点路径上所有的字符组成的。例如,现在我要存储字符串[“Y

2021-08-01 20:47:00 2458 1

原创 java Comparable 和Comparator详解

文章目录前言一、Comparable介绍二、Comparator介绍总结前言  Comparable 和Comparator分别对应我们所说的自然排序和比较器排序,Comparator相比于Comparable 要更加灵活,一个类实现Comparable接口并实现compareTo(T o)方法(该方法的返回值是 int 。如果返回值为正数,则表示当前对象(调用该方法的对象)比 obj 对象“大”;反之“小”;如果为零的话,则表示两对象相等)就可定义一种比较方式,但有时需要对同一对象进行多种不同方式.

2021-07-27 17:36:06 391

原创 HashMap底层源码解析

文章目录前言一、HashMap介绍二、源码1.hash方法2.get方法2.put方法3.resize 方法4.remove 方法前言1、本文将基于JDK1.8进行编写。2、转载请注明文章出处一、HashMap介绍HashMap是一种以键-值为存储方式的数据结构,在JDK1.8中,底层的数据结构为数组+链表+红黑树,在链表长度超过8且table数组大小大于等于64,则将链表转化为红黑树,当红黑树元素个数降为6时又会将红黑树转化为链表,hashmap默认的大小是16,注意,当我们实例化一个has.

2021-07-26 23:19:15 400

原创 面试官:你来给我讲一下ArrayList线程不安全的几种表现,怎么解决?

文章目录前言一、线程不安全的三种表现1.空指针异常情况一:size不达标情况二:size达标原因分析2.数组越界异常3.并发修改异常二、解决方法1.将ArrayList替换成Vector2.Collections.synchronizedList()3.使用CopyOnWriteArrayList总结前言大家都知道ArrayList是线程不安全的,那么ArrayList为什么线程不安全呢,线程不安全的表现是什么?有什么解决方法?本篇文章带大家来探讨一下。一、线程不安全的三种表现演示代码:im.

2021-07-17 16:43:41 1923

原创 mybatis-generator查出字段为空的情况

今天在实现JWT验证的时候,发现函数selectByExample()查询出来的token一直为null,原因是text属于文本字段,查询函数要从selectByExample换成selectByExampleWithBLOBs,看mapper.xml也发现长字段的属性单独划在一个resultMap中。...

2021-06-09 16:22:05 320

原创 二分法小总结

前言最近在做算法题的时候,发现二分法有许多小细节,稍不注意就导致出错,特此写下这篇博客,记录一下!二分法的应用场景二分法的应用场景一般有搜索某个数、寻找某个数的左右边界(当然,前提数组有序)。下面直接贴上代码后再总结:(1)搜索某个数:right以num.length - 1 结尾int Search(int[] nums, int target) { int left = 0; int right = nums.length - 1; //细节点 while(l

2021-06-07 16:21:57 172

转载 Mybatis自动生成的Example类详解

整合:1、Mybatis自动生成的Example类的使用与解析2、MyBatis的Mapper接口以及Example的实例函数及详解一、mapper接口中的方法解析mapper接口中的函数及方法方法功能说明int countByExample(UserExample example) thorws SQLException按条件计数int deleteByPrimaryKey(Integer id) thorws SQLException按主键删除int del

2021-05-11 18:43:03 2624 2

原创 大白话讲KMP算法

图片部分来源于网上,侵删。文章目录前言一、KMP算法1、简单介绍2、算法原理二、next数组1.原理介绍2.代码介绍三、整体代码前言kmp算法是一种改进的字符串匹配算法,由D.E.Knuth,J.H.Morris和V.R.Pratt提出的,因此人们称它为克努特—莫里斯—普拉特操作。它的核心是利用匹配失败后的信息,尽量减少模式串与主串的匹配次数以达到快速匹配的目的。具体实现是通过一个next()函数实现,函数本身包含了模式串的局部匹配信息。kmp算法的时间复杂度O(m+n)。(搜狗百科)说了这么多

2021-05-05 21:10:14 205

原创 SpringBoot项目引入jquery无效问题

SpringBoot项目引入jquery,html能显示引入成功,前端页面却找不到.解决方法:1.先查看

2021-05-04 15:19:44 1851 1

原创 算法题-滑动窗口的最大值

题目(来源力扣):给定一个数组 nums 和滑动窗口的大小 k,请找出所有滑动窗口里的最大值。示例:输入: nums = [1,3,-1,-3,5,3,6,7], 和 k = 3输出: [3,3,5,5,6,7] 解释: 滑动窗口的位置 最大值--------------- -----[1 3 -1] -3 5 3 6 7 3 1 [3 -1 -3] 5 3 6 7 3 1 3

2021-04-29 22:51:12 216

原创 数据结构-堆(附算法题以及堆实现程序)

import java.util.Arrays;import java.util.Random;public class Demo08 { public static void main(String[] args) { Heap heap = new Heap(); //随机添加150个Integer for(int i=0;i<150;++i){ heap.add(new Random().nextInt(10

2021-03-21 00:54:31 598 2

原创 Java中String深度解析

字符串常量池概述  

2021-03-01 11:59:58 189 1

原创 JavaIO流超详解

转载请注明文章出处:文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):import numpy a

2021-02-23 22:32:31 614

原创 Java异常体系总结

异常体系图!Throwable是所有异常的父类,它有错误(Error)和异常(Exception)两个子类,下面对他们进行一个解释。一、ErrorErrorr 往往是很严重的错误,是程序无法处理的异常,我们没办法通过程序进行捕获,比如内存溢出(OutOfMemoryError)、线程死亡(ThreadDeath),java虚拟机运行错误(Virtual MachineError)等。这些异常发生时, Java虚拟机(JVM)一般会选择线程终止。这类错误只能我们自己改正回来,举个例子:impor

2021-02-16 16:27:06 152 1

原创 Static由浅入深

转载请标明文章出处:文章目录前言一、Static的各种使用情况1、普通类中Static的使用情况2、子类或者实现类Static的使用情况二、使用步骤1.引入库2.读入数据总结前言我们在使用一个类时,通常要先申明一个指向这个类对象的引用,通过这个引用,我们可以使用类中的相关变量和方法。但经过static修饰的变量和方法,我们可以直接通过类调用,即类名.xxx的形式。这是为什么呢?本篇博文将带大家从基础开始了解,并逐渐深入底层,带你走近Static。一、Static的各种使用情况1、普通类中St

2021-02-15 12:12:58 230

原创 Java三大特征详解

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码

2021-02-11 12:45:44 1074 5

原创 简单概括java中文件字节流和字符流的一些注意事项

一、相关对象:FileInputStreamFileOutputStreamFileReaderFileWriter二、区别:1、字符输出流FileWriter在写入到文件中时要刷新缓冲流flush();直接关闭流前也会先执行一遍上面的刷新。2、字节流同样也可以向文件中写入汉字,只要知道相应汉字的字节表示。例如: FileOutputStream fos = new FileOutputStream(new File("E:\\ming.txt")); //汉字“戈”

2020-06-13 16:18:09 932

原创 sql双not exists实现除法

废话少说,我们直接上要求:J(工程)表J(零件)表SPJ(工程供应)表查询至少使用了S2供应商所供应的全部零件(Jno 工程号,Jname 工程名)。我们先直接上答案:select jno,jnamefrom Jwhere not exists(select *from SPJ Awhere Sno = ‘S2’and not exists(select *fro...

2020-05-01 21:37:53 2657 1

原创 微信小程序结合springboot实现登录功能

闲话不多说,我们直接开始:准备工具:1、微信开发者工具(到微信小程序官网下载)2、IDEA微信开发者工具1、下载完后打开新建项目上面是项目的目录2、增加页面按上图所示增加页面后保存,目录中就会自动生成相应的页面文件3、编写页面4、编写逻辑在login.js中// pages/login/login.jsPage({ /** * 页面的初始数据 *...

2020-02-21 12:09:17 5840

原创 链接数据库报错(Communications link failure)

com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failureThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets fro...

2020-02-19 11:08:17 814

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除