自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(42)
  • 收藏
  • 关注

原创 IDEA撤销已经commit的代码和记录

IDEA撤销已经commit的代码和记录

2023-03-09 16:21:26 1015 1

转载 java多线程、线程池及Spring配置线程池详解

java多线程、线程池及Spring配置线程池详解

2023-02-16 10:25:40 338

原创 git的介绍和基本使用

git的基础和使用

2023-02-14 20:50:07 185

原创 如何在电脑上安装一个Linux环境(2)

Linux网络、远程登录

2023-02-14 19:49:35 127

原创 如何在电脑上安装一个Linux环境(1)

如何在电脑上安装一个Linux环境(1)

2023-02-14 17:32:49 112

原创 Spring Security入门

简介:Spring Security是针对Spring项目的安全框架,也是Spring Boot底层安全模块默认的技术选型,他可以实现强大的Web安全控制,对于安全控制,我们仅需要引入spring-boot-starter-security模块,进行少量的配置,即可实现强大的安全管理!记住几个类:WebSecurityConfigurerAdapter:自定义Security策略. AuthenticationManagerBuilder:自定义认证策略. @EnableWebSecurit

2022-05-20 21:57:57 128

原创 中和农信一面(Java实习生)

1. 自我介绍一下2. 介绍一下项目经历3. 针对简历提出一些问题4. 针对项目提出一些问题5. SpringBoot和SpringMVC的区别和优势6. 创建线程的几种方式7. 线程池了解多少?区别是?8. JVM内存模型9. MySQL常用关键字10. 怎么看MySQL有没有走索引11. 实习薪资,实习时间...

2022-05-18 10:43:18 630 2

原创 时间/空间复杂度计算

排序也称排序算法(Sort Algorithm),排序是将—组数据,依指定的顺序进行排列的过程。排序的分类:1)内部排序:指将需要处理的所有数据都加载到内部存储器(内存)中进行排序。2)外部排序法:数据量过大,无法全部加载到内存中,需要借助外部存储(文件等)进行排序。3)常见的排序算法分类度量一个程序执行时间的两种方法1)事后统计的方法...

2022-04-11 21:37:09 333

原创 Java实现全部7种排序算法

冒泡排序https://blog.csdn.net/jxiao_linbei/article/details/124107564?spm=1001.2014.3001.5501选择排序https://blog.csdn.net/jxiao_linbei/article/details/124107814?spm=1001.2014.3001.5501插入排序https://blog.csdn.net/jxiao_linbei/article/details/124108155?spm=1001.20

2022-04-11 21:17:13 406

原创 Java基数排序

基数排序(桶排序)介绍:1)基数排序(radix sort)属于“分配式排序”(distribution sort),又称“桶子法”(bucket sort)或bin sort,顾名思义,它是通过键值的各个位的值,将要排序的元素分配至某些“桶”中,达到排序的作用。2) 基数排序法是属于稳定性的排序,基数排序法的是效率高的稳定性排序法3) 基数排序(Radix Sort)是桶排序的扩展4) 基数排序是1887年赫尔曼·何乐礼...

2022-04-11 21:04:20 132

原创 Java归并排序

归并排序介绍 :归并排序(MERGE-SORT)是利用归并的思想实现的排序方法,该算法采用经典的分治(divide-and-conquer)策略(分治法将问题分(divide)成一些小的问题然后递归求解,而治(conquer)的阶段则将分的阶段得到的各答案"修补"在一起,即分而治之)。图示1:图示2-合并相邻有序子序列:再来看看治阶段,我们需要将两个已经有序的子序列合并成一个有序序列,比如上图中的最后一次合并,要将[4,5,7,8]和[1,2,3,6...

2022-04-11 20:53:28 125

原创 Java快速排序

快速排序法介绍:快速排序(Quicksort)是对冒泡排序的一种改进。基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。图示:代码:public class QuickSort { public static void main(String[] args) { //int[] arr = {-9,78,0,23.

2022-04-11 20:32:57 93

原创 Java希尔排序

希尔排序法介绍:希尔排序是希尔(Donald Shell)于1959年提出的一种排序算法。希尔排序也是一种插入排序,它是简单插入排序经过改进之后的一个更高效的版本,也称为缩小增量排序。希尔排序法基本思想:希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止图解:代码实现:public class ShellSort { public static v...

2022-04-11 20:27:03 108

原创 Java插入排序

插入式排序属于内部排序法,是对于欲排序的元素以插入的方式找寻该元素的适当位置,以达到排序的目的。插入排序法思想:插入排序(Insertion Sorting)的基本思想是:把n个待排序的元素看成为一个有序表和一个无序表,开始时有序表中只包含一个元素,无序表中包含有n-1个元素,排序过程中每次从无序表中取出第一个元素,把它的排序码依次与有序表元素的排序码进行比较,将它插入到有序表中的适当位置,使之成为新的有序表。图示:例题:有一群小牛,考试成绩分别是101,34,1...

2022-04-11 20:20:21 103

原创 Java选择排序

选择式排序也属于内部排序法,是从欲排序的数据中,按指定的规则选出某一元素,再依规定交换位置后达到排序的目的。选择排序思想:选择排序(select sorting)也是一种简单的排序方法。它的基本思想是:第一次从arr[o]~arr[n-1]中选取最小值,与arr[o]交换,第二次从arr[1]~arr[n-1]中选取最小值,与arr[1]交换,第三次从arr[2]~arr[n-1]中选取最小值,与arr[2]交换,…,第i次从arr[i-1]~ar...

2022-04-11 20:12:28 121

原创 Java冒泡排序

冒泡排序(Bubble Sorting)的基本思想是: 通讨对待排序序列从前向后(从下标较小的元素开始),依次比较相邻元素的值,若发现逆序则交换,使值较大的元素逐渐从前移向后部,就象水底下的气泡一样逐渐向上冒。因为排序的过程中,各元素不断接近自己的位置,如果一趟比较下来没有进行过交换,就说明序列有序,因此要在排序过程中设置一个标志flag判断元素是否进行过交换。从而减少不必要的比较。冒泡排序应用实例:我们举一个杲体的案例来说明冒泡法。我们将五个无序的数:3,9,-1,...

2022-04-11 19:58:44 103

原创 Linux的Yum工具

linux软件管理有两种方式,一个是rpm,一个是yumrpm:二进制安装,无需编译,可以直接使用,没办法解决软件依赖yum:基于rpm包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并 且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。yum目录:/etc/yum.repos.d/[dvd] 某一个库的名称,中括号[]是必须的name=dvd 库的说明,name是必须的baseurl= 下载库的具...

2022-04-10 20:30:03 659

原创 Linux编辑器

首先使用: (vim 文件名)指令 --> 进入到编辑器目录命令模式操作怎么从命令切换到编辑模式怎么退出编辑模式进入命令模式怎么从命令模式中进入到末行模式中可视化操作命令模式操作:1. 复制一整行yy 到达指定目标位置后按p2. 删除一整行行dd 1-1. 复制多行 n+yy 到达指定目标位置后按p2-1. 删除多行 n+dd2-2. 从开头删到结尾 dG 从结尾删到开头 dgg2-3. 从当前字符删除到该...

2022-04-10 20:27:24 1006

原创 Linux基本指令

目录关闭防火墙:历史使用过的命令:筛选查找:主机名:同步互联网时间:关机/重启查看文件( ls ) :删除文件(rm):文件的创建(touch):文件复制(cp):文件移动(mv):绝对路径和相对路径(pwd/ cd):关闭防火墙:[root@localhost ~]# systemctl stop firewalld ---关闭防火墙[root@localhost ~]# systemctl disable firewalld ...

2022-04-10 20:09:31 1062

原创 递归 - 八皇后问题(回溯算法)

八皇后问题介绍:八皇后问题, 是一个古老而著名的问题,是回溯算法的典型案例。该问题是国际西洋棋棋手马克斯·贝瑟尔于1848年提出: 在8×8格的国际象棋上摆放八个皇后,使其不能互相攻击, 即:任意两个皇后都不能处于同一行、同一列或同一斜线上,问有多少种摆法。八皇后问题算法思路分析:1) 第一个皇后先放第一行第一列2) 第二个皇后放在第二行第一列、然后判断是否OK,如果不OK,继续放在第二列、第三列、依次把所有列都放完,找到一个合适...

2022-04-10 19:39:39 450

原创 递归 - 迷宫问题

说明:1)小球得到的路径,和程序员设置的找路策略有关即: 找路的上下左右的顺序相关2)再得到小球路径时, 可以先使用(下右上左),再改成(上右下左),看看路径是不是有变3)测试回溯现象4)思考: 如何求出最短路径?代码实现:public class maze { public static void main(String[] args) { //创建一个二维数组模拟迷宫 ...

2022-04-08 17:46:09 244

原创 Java递归调用

递归用于解决什么样的问题?1)各种数学问题如: 8皇后问题,汉诺塔,阶乘问题,迷宫问题,球和篮子的问题 (google编程大赛)2)各种算法中也会使用到递归,比如快排,归并排序,二分查找,分治算法等.3)将用栈解决的问题 --> 递归代码比较简洁简单的说:递归就是方法自己调用自己, 每次调用时传入不同的变量. 递归有助于编程者解决复杂的问题, 同时可以让代码变得简洁。递归需要遵守的重要规则:1...

2022-04-08 11:26:06 840

原创 栈实现综合计算器

使用栈完成表达式的计算 思路:1. 通过一个 index 值(索引),来遍历我们的表达式2. 如果我们发现是一个数字, 就直接入数栈3. 如果发现扫描到是一个符号, 就分如下情况3.1 如果发现当前的符号栈为 空,就直接入栈 3.2 如果符号栈有操作符,就进行比较,如果当前的操作符的优先级小于或者等于栈中的操作符, 就需要从数栈中pop出两个数,在从符号栈中pop出一个符号,进行运算,将得到结果,入数栈,然后将当前的操作符入符号栈, 如果当前的操作符的优...

2022-04-08 10:58:24 99

原创 Java栈的实现

栈的介绍栈的英文为(stack) 栈是一个先入后出(FILO-First In Last Out)的有序列表。 栈(stack)是限制线性表中元素的插入和删除只能在线性表的同一端进行的一种特殊线性表。允许插入和删除的一端,为变化的一端,称为栈顶(Top),另一端为固定的一端,称为栈底(Bottom)。 根据栈的定义可知,最先放入栈中元素在栈底,最后放入的元素在栈顶,而删除元素刚好相反,最后放入的元素最先删除,最先放入的元素最后删除...

2022-04-08 10:03:24 475

原创 Java实现链表

链表是以节点方式来存储, 是链式存储 每个节点包含data域, next域: 指向下一个节点 如图: 链表的各个节点不一定是连续存放的 链表分带头节点的链表和没有头节点的链表, 根据实际的需求来确定使用带head头的单向链表实现-水浒英雄排行榜管理1)完成对英雄人物的增删改查操作2)第一种方法在添加英雄时, 直接添加到链表尾部3)第二种方式在添加英雄时,根据排名将英雄插入到指定位置(如果有这个排名, 则添加失败,并给出提示)...

2022-04-07 20:20:22 658

原创 稀疏数组和队列

稀疏数组基本介绍 :当一个数组中大部分元素为0,或者为同一个值的数组时,可以使用稀疏数组来保存该数组。稀疏数组的处理方法是:记录数组一共有几行几列,有多少个不同的值 把具有不同值的元素的行列及值记录在一个小规模的数组中,从而缩小程序的规模 [例]: [0]行记录 : [ 有几行 ] [ 有几列 ] [ 有几个数值 ][例]: 编写五子棋程序[11*11], 有存盘退出和续上盘的功能.首先考虑使用二维数组来记录棋盘 : 该二维数组有很多值默...

2022-03-11 08:47:36 52

原创 数据结构与算法介绍

数据结构包括: 线性结构和非线性结构(一) 线性结构:数据元素存在一对一的线性关系. 顺序存储结构(数组):顺序存储线性表为顺序表, 顺序表中存储元素是连续的. 链式存储结构(链表):链式存储的线性表为链表, 链表中的存储元素不一定是连续的, 元素节点中存放的数据元素以及相邻元素的地址信息. 线性结构常见的有: 数组, 队列, 链表和栈.(二) 非线性结构: 非线性结构包括: 二维数组, 多维数组, 广义表, 树结构, 图结构.程序 = 数据结构 + 算法...

2022-03-09 09:51:39 129

原创 复习多线程进阶

Lamda表达式 :理解Functional Interface(函数式接口) 是学习Java8 lambda表达式的关键所在 函数式接口的定义: 任何接口, 如果只包含唯一一个抽象方法, 那么它就是一个函数式接口 public interface Runnable{ public abstract void run(); } 对于函数式接口, 我们可以通过lambda表达式来创建该接口的对象 ...

2022-03-06 18:08:57 81

原创 复习多线程

线程简介:任务, 进程, 线程, 多线程: 程序是静态的, 程序跑起来变成了进程, 进程里分为了若干个线程.注意: 很多多线程是模拟出来的, 真正的多线程是指有多个cpu, 即多核, 如服务器. 如果是模拟出来的多线程, 即在一个cpu的情况下, 在同一个时间点, cpu只能执行一个代码, 因为切换的很快, 所以就有同时执行的错觉.线程就是独立的执行路径; 在程序运行时, 即使没有自己创建的线程, 后台也会有多个线程, 如主线程, gc线程; main()称之为主线程, 为系统的入口, 用于

2022-03-03 20:24:28 226

原创 java数组

数组声明创建:首先必须声明数组变量, 才能在程序中使用数组.dataType[] arrayRefVar //首选dataType arrayRefVar[] //效果相同java语言使用new操作符来创建数组, 语法如下:dataType[] arrayRefVar = new dataType[arraySize];数组的元素是通过索引访问的, 数组索引从0开始.获取数组的长度: arrays.length.创建+赋值:int[] array = {1, 3, 2,4

2022-03-03 17:28:52 125

原创 java编程基础

新建一个Empty Project, 方便知识回顾File->new->Module...新建模块: 注意环境设置测试 :public class HelloWord { public static void main(String[] args) { System.out.println("Hello, World!"); }}注释 :单行注释//多行注释/**/文档注释 JavaDoc /** * */ 带有参数功能标识

2022-02-25 08:54:31 223

转载 一些关于java网站开发的相关 文档/工具

一、xadmin地址http://x.xuebingsi.com/index/down/index.html二、Springboot文档https://docs.spring.io/spring-boot/docs/2.1.5.RELEASE/reference/htmlsingle/三、Spring Web MVC文档https://docs.spring.io/spring/docs/5.2.0.M1/spring-framework-reference/web.html#spring-w

2021-11-02 10:31:42 97

转载 com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: 1 字节的 UTF-8 序列的字节 1 无效

2021-10-15 08:22:07 96

原创 IDEA 不能识别vue怎么办

ctrl+alt+s(idea默认快捷键,打开的是Settings)Editor->File Types找到html文件在下面点+号输入*.vue如果file type里没有Vuejs.Template的话, 可以通过安装插件来解决 : 点击左上角的File,再点击Settings,选择plugins找到vue.js,点击安装就可以了。...

2021-10-06 21:11:22 6560 1

原创 2020Idea中Maven无法自动下载

在配置一个maven项目中需要导入一些jar包,在idea中可以设置自动下载并导入所需要的包,具体方法如下所示:首先打开setting 找到Maven中的importing,将图中三个选项勾选上就可以实现了。

2021-10-05 19:47:17 814

原创 leetcode 2001. 可互换矩形的组数

题目 :用一个下标从 0 开始的二维整数数组rectangles 来表示 n 个矩形,其中 rectangles[i] = [widthi, heighti] 表示第 i 个矩形的宽度和高度。如果两个矩形 i 和 j(i < j)的宽高比相同,则认为这两个矩形 可互换 。更规范的说法是,两个矩形满足widthi/heighti == widthj/heightj(使用实数除法而非整数除法),则认为这两个矩形可互换 。计算并返回rectangles 中有多少对 可互换 矩形。示例 ...

2021-09-23 21:22:35 174

原创 leetcode 2000. 反转单词前缀

题目 :给你一个下标从 0 开始的字符串 word 和一个字符 ch 。找出 ch 第一次出现的下标 i ,反转 word 中从下标 0 开始、直到下标 i 结束(含下标 i )的那段字符。如果 word 中不存在字符 ch ,则无需进行任何操作。例如,如果 word = "abcdefd" 且 ch = "d" ,那么你应该 反转 从下标 0 开始、直到下标 3 结束(含下标 3 )。结果字符串将会是 "dcbaefd" 。返回 结果字符串 。示例 1:输入:word = "abcdef

2021-09-16 22:42:48 298

原创 IDEA中新建一个java类,无法实现Servlet接口或者继承HttpServlet类

问题描述:新建一个java类,无法实现Servlet接口或者继承HttpServlet类原因:缺少tomcat的libraries(HttpServlet类或者Servlet接口对应位置在tomcat的lib中对应的jar包)没有导入Servlet-api.jar包解决方法:成功引入servlet-api.jar包后:直接按住alt + insert 键可以出来提示,要求实现Servlet中的五个抽象方法...

2021-09-08 15:50:11 1479

原创 java.sql.SQLException: The server time zone value ‘�й���׼ʱ��‘ is unrecognized or represents more tha

报错演示 : Class.forName("com.mysql.cj.jdbc.Driver"); String url = "jdbc:mysql://localhost:3306/gamedate"; String username = "root"; String password = "root"; Connection con = DriverManager.getConnection(url, username, password);上面的写法.

2021-09-07 21:59:13 77

原创 IDEA 无法创建Java Class 文件 或 文件显示错误

错误格式:解决方案 :左上角 file-----project structure将想要存放Java文件的文件夹 右键格式改为resource效果 (显示正常) :由图可知目录分为五种类型注意:其中只有sources可以创建Java类和包Sources 一般用于标注类似 src 这种可编译目录。有时候我们不单单项目的 src 目录要可编译,还有其他一些特别的目录也许我们也要作为可编译的目录,就需要对该目录进行此标注。只有 Sources 这种可编译目录才可以新建.

2021-09-06 20:57:46 2966 1

空空如也

空空如也

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

TA关注的人

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