自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 LRU代码实现

【代码】LRU代码实现。

2023-08-20 22:18:50 114

原创 1024程序猿节

1024程序猿节

2022-10-24 10:22:05 200 1

原创 MybatisPlus笔记

MybatisPlus没有对Mybatis做功能上的优化,只是简化了开发。1、创建mybatis_plus项目步骤①创建数据库,创建数据库表,添加数据,用于mp操作。②创建springboot工程,2.2.1版本。③pom.xml引入相关依赖。<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <ar

2022-05-06 16:55:06 980

原创 Zookeeper的一些javaAPI操作

public class ZookeeperAPITest { /** * 测试 zookeeper,创建永久节点 * @throws Exception */ @Test public void createZnode() throws Exception { /** * 定制一个重试策略 * param1:重试的时间间隔 * param2:重试的最大次数 */.

2021-08-16 17:19:18 134

原创 Error: Cannot find a valid baseurl for repo: base

CentOs6出现 Error: Cannot find a valid baseurl for repo: base 问题,网上搜了一大堆,都不管用,直到看到了以下这篇博客,完美解决。参考博客

2021-07-28 18:17:50 275

原创 本科四年总结

不出意外,这应该是我本科阶段最后一篇博客了。这次没有算法,没有技术,只有闲谈。当初对计算机一窍不通的我,竟然真的选择了这个行业。大一入学,懵懵懂懂,什么都不了解,更不知道算法这个东西。参加梦工厂实验室的选拔,果然,得分很低,就这样,大一无缘实验室。大二重新分了宿舍,坤神的一句“加入我们实验室吧”,真正开启了我的竞赛之旅。从那以后,我就跟着梦工厂训练了。不久,蓝桥杯就来了,当时就一个想法:我能打吗?很想打,但又觉得自己很菜,最后还是决定尝试一下,没想到竟然拿到了国二。那个时候起,我就对自己有了信心。大二暑

2021-04-17 10:21:22 315 6

原创 CMS和G1

CMS1、目标CMS以获取最短回收停顿时间为目标。2、采用的算法CMS采用的算法是:标记-清除。3、概念Stop The Word:虚拟机停顿正在执行的任务,即停顿用户线程。4、CMS收集过程①初始标记:Stop The Word。从GC Roots开始,只标记与GC Roots直接关联的对象,速度很快。②并发标记:与用户线程可以并发执行,从GC Roots开始,进行可达性分析,找出存活对象。③重新标记:Stop The Word。因为并发标记阶段用户线程继续执行,

2020-09-12 21:52:01 177

原创 三次握手和四次挥手

三次握手:首先服务端处于LISTEN状态,等待客户的连接请求。1、客户端发起连接请求报文段,同步位SYN=1,同时随机产生一个序号seq=x,然后客户端进入SYN_SENT阶段。2、服务端收到客户端发来的连接请求报文段后,如果同意连接,就要发送确认报文段,其中使SYN=1,ACK=1,确认号ack=x+1,选择自己的序号seq=y,并进入SYN_RCVD阶段。3、客户端收到服务端发来的确认报文段后,向服务端给出确认,ACK=1,确认号ack=y+1,并进入ESTAB_LISHED阶段。服务端

2020-09-02 20:21:29 242 2

原创 linux学习

关机1、shutdown -h now:正常关机。2、halt:关闭内存。3、init 0

2020-08-23 10:49:57 271

原创 剑指offer--二叉搜索树与双向链表

题目:输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。例如:按顺序输入10,6,14,4,8,12,16。从左到右输出:4,6,8,10,12,14,16,从右到左输出:16,14,12,10,8,6,4。思路:左右子树分开排。/**public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null;

2020-07-19 23:16:11 108

原创 使用表单的POST方法实例

getTest.html<!DOCTYPE html><html><head> <meta charset="UTF-8"> <title>使用POST</title></head><body> <form action="HelloForm" method="POST"> 用户名:<input type="text" name="user"><br>

2020-06-20 21:29:34 620 2

原创 初学mybatis--存个代码

目录结构mybatis.xml<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE configurationPUBLIC "-//mybatis.org//DTD Config 3.0//EN""http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration> <!-- default与id值保持一致 --> <environme

2020-06-19 10:24:44 230

原创 JavaScript

Function:函数对象1、创建:<script> //1.创建方式1(不常用) var fun1 = new Function("a", "b", "document.write((a + b) + '<br>');"); fun1(2, 6); //2.创建方式2 function fun2(a, b) { document.write((a + b) + "<br>"); } fun2(3, 4); //3.创建方式3 var f

2020-05-29 16:32:50 180

原创 数据库连接池&JDBCTemplate

概念数据库连接池是一个存放数据库连接的容器。当系统初始化好后,容器被创建,容器中会申请一些连接对象,当用户来访问数据库时,从容器中获取连接对象,用户访问完之后,会将连接对象归还给容器。好处:节约资源、用户访问高效。...

2020-05-22 22:14:04 203

原创 JDBC笔记

1、概念:Java DataBase Connectivity Java数据库连接,Java语言操作数据库。JDBC其实是一套操作所有关系型数据库的规则,即接口。操作不同数据库,需要不同数据库的实现类(数据库驱动)。2、

2020-05-20 14:29:27 164

原创 数据库笔记

1、启动和关闭mysql:net start / stop mysql2、登录mysql:mysql -uroot -p3、退出mysql:exit / quitDDL部分1、创建数据库:①直接创建数据库:create database db1; ②判断不存在之后,再创建:create database if not exists db1; ③创建数据库并指定字符集:crea...

2020-05-16 16:17:18 20709

原创 反射

1、反射(1)概念:将类的各个组成部分封装为其他对象,这就是反射机制。(2)在Class类对象里面:成员变量封装成Field对象;构造方法封装成Constructor对象;成员方法封装成Method对象。(3)java代码在计算机中经历的三个阶段:Source源代码阶段、Class类对象阶段、Runtime运行时阶段。再回过头来看反射的定义,将成员变量封装成Field对象、将构造方法封装成Constructor对象、将成员方法封装成Merhods对象等过程就是反射的过程。(4)Cla

2020-05-13 09:40:34 175

原创 火星文字典

题目大意已知一种新的火星文的单词由英文字母(仅小写字母)组成,但是此火星文中的字母先后顺序未知。给出一组非空的火星文单词,且此组单词已经按火星文字典序进行好了排序(从小到大),请推断出此火星文中的字母先后顺序。输入描述:一行文本,为一组按火星文字典序排序好的单词(单词两端无引号),单词之间通过空格隔开。输出描述:按火星文字母顺序输出出现过的字母,字母之间无其他字符,如果无法确定...

2020-04-15 20:09:48 824

原创 final关键字

作用1、修饰变量:被final修饰的变量是不能被重新赋值的。public class Demo { public static final int num = 15; public static void main(String[] args) { // num = 20; 报错 }}2、修饰对象的引用:能通过函数赋值,但不能改变对象的引用。public cla...

2020-04-04 12:17:49 118

原创 String、StringBuffer、StringBuilder比较

1、String类是不可变类,一旦一个String对象被创建以后,包含在这个对象中的字符序列是不可变的,直至这个对象销毁。对一个已经创建的String对象进行修改的时候,不是对原来堆中的实例对象重新赋值,而是生成一个新的实例对象,并且指向这个新生成的对象,之前的对象仍然存在,如果没有被再次引用,就会被垃圾回收。String是线程安全的,适用于少量的字符串操作。2、StringBuffer是可...

2020-04-02 14:59:35 138

原创 进程和线程的区别

1、根本区别:进程是操作系统资源分配的基本单位;线程是CPU调度和执行的基本单位。2、操作系统能同时运行多个进程;一个进程又可以同时执行多个线程,这些线程共享同一个进程的资源。3、只有一个线程的进程可以看做是单线程的;如果一个进程有多个线程,则多个线程同时执行,通过CPU调度,在每个时间片内只能有一个线程执行。4、当一个进程结束的时候,它所拥有的线程全部销毁;而当一个线程结束的时候,不...

2020-04-02 14:46:35 144

原创 Java中堆和栈的区别

1、栈由操作系统自动分配和释放,无需手动控制;堆的申请和释放需要程序员控制,容易产生内存泄漏。2、栈中主要存放一些基本数据类型(byte、short、int、long、float、double、boolean、char)的变量和对象的引用;Java的堆是一个运行时数据区,类的对象从堆中分配空间,这些对象通过new等指令建立,通过垃圾回收器销毁。3、存放在栈中的数据占用多少空间需要在编译时确...

2020-04-02 14:32:03 138

原创 Java字节流和字符流

Java I/O操作的步骤1、使用File类打开一个文件。2、通过字节流或字符流的子类指定输出位置。3、进行读/写操作。4、关闭输入/输出。字节流InputStream、OutputStream,子类如上图所示。InputStream没有readLine()方法,不能读取一行。使用字节流时,不调用close()方法也可以输出。public class De...

2020-03-13 21:36:58 184

原创 浅谈某些容器底层

刚开始学,稀里糊涂的写一点。。。ArrayList参考博客:https://www.cnblogs.com/leesf456/p/5308358.html1、ArrayList底层的数据结构其实就是一个可变数组,数组的元素类型是Object类型,可以存放各种类型的数据,允许null的存在。2、ArrayList继承了AbstractList抽象父类,实现了List接口(规定了Li...

2020-03-12 22:00:44 1469

原创 C++派生类的构造函数与析构函数

存个代码#include <bits/stdc++.h>using namespace std;class Parent {protected: int pnum;public: Parent(){ pnum = 0; cout << "调用Parent的无参构造函数" << endl; } Parent(int pnum) { ...

2020-03-09 16:06:40 202

原创 大臣的旅费--Java实现

问题描述很久以前,T王国空前繁荣。为了更好地管理国家,王国修建了大量的快速路,用于连接首都和王国内的各大城市。为节省经费,T国的大臣们经过思考,制定了一套优秀的修建方案,使得任何一个大城市都能从首都直接或者通过其他大城市间接到达。同时,如果不重复经过大城市,从首都到达每个大城市的方案都是唯一的。J是T国重要大臣,他巡查于各大城市之间,体察民情。所以,从一个城市马不停蹄地到另一个城市成了J最常做...

2020-02-13 16:22:44 207

原创 java:全排列

java没有next_permutation()这个函数,需要自己写。import java.util.*;public class Main { static Scanner sc = new Scanner(System.in); static int a[] = new int[15]; // 交换函数 static void swap(int x, int y) { ...

2020-02-12 15:54:20 253

原创 java:String

常用方法1、str.length():返回字符串长度。2、str.charAt(index):返回字符串中指定位置的字符。3、str.indexOf(substr):返回字符串中第一次出现substr的位置,没有返回-1。4、str.indexOf(substr, index):返回字符串中,从指定位置开始,第一次出现substr的位置,没有返回-1。5、str.substr...

2020-02-06 16:32:16 188

原创 java:sort

SORT普通数组排序public class Main { public static int n; public static int N = 100005; public static int a[] = new int[N]; public static void main(String[] args) { Scanner sc = new Scanner(System...

2020-02-03 10:16:34 284

原创 java:util

1、Stackpublic class Main { static Stack<Integer> stack = new Stack<Integer>(); public static void main(String[] args) { Scanner sc = new Scanner(System.in); // 进栈 stack.push(1);...

2020-02-01 15:23:13 215

原创 C - Constanze's Machine--斐波那契数列

题目链接:https://vjudge.net/contest/348149#problem/C题目大意:m可以被拆成nn,w可以被拆成uu,机器不能生成m和w,求字符串有多少种组成的可能。分析:斐波那契数列,模一下就可以了(朋友们是用dp做的。。。)代码:#include <bits/stdc++.h>using namespace std;typedef lo...

2019-12-12 20:53:45 205

原创 The Labyrinth--bfs

题目链接:https://vjudge.net/problem/CodeForces-616C#author=0思路:bfs'.',这样就可以把联通在一起的'.',和成一个联通块,计算出'.'的个数,然后把这个联通块标号,放入mp中,最后遍历矩阵时,当遇到'*',就把上下左右四个方向上不同的联通块代表的数量加起来。代码:#include <bits/stdc++.h>u...

2019-12-12 16:55:22 197

原创 Below the Diagonal--递归

题目链接:https://vjudge.net/problem/CodeForces-266C题目大意:有一个n*n的矩阵,其中有n-1个‘1’,其余全为0,存在两种操作:1 交换某两行;2 交换某两列。在这两种操作下,把所有的1全部换到主对角线一下,即i > j。分析:因为有n-1个1,所以必定有一列全为0,把这一列与最后一列交换,然后找到一行存在1的,与最后一行交换,这样就把问题...

2019-12-11 21:34:53 156

原创 Edge Deletion--最短路+bfs

题目链接:https://vjudge.net/problem/CodeForces-1076D题目大意:给出n个点,m条边,最多能保留K条边。原图上每个点的最短路为di。现在删除了边后,使得到点1的距离仍为di的点数量最多的情况下,输出应该保留的K条边的编号。分析:既然要使结果最大,那就尽可能多保留边,即k条边。跑一遍最短路,求出1到每个点的最短距离,然后bfs,如果某条边在最短路的路径...

2019-12-07 21:49:37 172

原创 PAT--1151 LCA in a Binary Tree--LCA

题目链接:https://pintia.cn/problem-sets/994805342720868352/problems/1038430130011897856题目大意:给定中序和先序,求给定两个点的最近公共祖先。分析:假设给出的是a和b,若a和b在当前根节点的左子树上,那么就在当前根节点的左子树上找,同理,都在右子树上,就在当前根节点的右子树上找,如果一个左边,一个右边,那么答案就...

2019-12-02 22:44:53 118

原创 PAT--1126 Eulerian Path

题目链接:https://pintia.cn/problem-sets/994805342720868352/problems/994805349851185152题目大意:Eulerian:连通图且所有定点的度为偶数Semi-Eulerian:连通图,且只有两个点的度为奇数Non-Eulerian:其它分析:并查集判断是否为连通图,再看各个定点的度就可以了,主要是没读懂题。。...

2019-12-01 20:21:51 112

原创 费马小定理求逆元

如果p是素数,则a ^ (p - 1) = 1 % p即a ^ (p - 2) * a = 1 % pa ^ (p - 2)就是a的逆元求快速幂的时候,最好先把a模一下。#include <bits/stdc++.h>using namespace std;typedef long long ll;const int N = 20;const ll mod...

2019-11-30 20:15:03 262

原创 PAT--1134 Vertex Cover

题目链接:https://pintia.cn/problem-sets/994805342720868352/problems/994805346428633088题目大意:给出一个无向图,再给出k组点的集合,问每一组点的集合能不能把每条边都包含(只要某条边的一个顶点在集合当中就算包含)。分析:对于每一组集合,遍历每一条边,只要某一条边的两个顶点都不在集合里面,那么这条边就一定是不被包含的...

2019-11-28 18:52:32 118

原创 PAT--1129 Recommendation System

题目链接:https://pintia.cn/problem-sets/994805342720868352/problems/994805348471259136题目大意:在用户点击第i个商品前,求出应该推荐的商品(最多k个)。直接看代码吧#include <bits/stdc++.h>using namespace std;const int N = 5e4 + ...

2019-11-28 16:13:22 123

原创 PAT--1136 A Delayed Palindrome--大数相加

题目链接:https://pintia.cn/problem-sets/994805342720868352/problems/994805345732378624大数相加,记个模板。#include <bits/stdc++.h>using namespace std;string sum(string s1, string s2) { if(s1.length() ...

2019-11-23 18:58:47 263 4

空空如也

空空如也

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

TA关注的人

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