自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 K分查找时间复杂度推导

K分查找时间复杂度推导

2022-08-31 16:38:20 2635 11

原创 Dijk无优化模板

Dijk模板描述某省自从实行了很多年的畅通工程计划后,终于修建了很多路。不过路多了也不好,每次要从一个城镇到另一个城镇时,都有许多种道路方案可以选择,而某些方案要比另一些方案行走的距离要短很多。这让行人很困扰。现在,已知起点和终点,请你计算出要从起点到终点,最短需要行走多少距离。输入本题目包含多组数据,请处理到文件结束。每组数据第一行包含两个正整数N和M(0<N<200,0<M<1000),分别代表现有城镇的数目和已修建的道路的数目。城镇分别以0~N-1编号。接下来是M

2022-03-16 18:57:50 165

原创 Shiro|AuthenticatingRealm的认证流程(简要)

AuthenticatingRealm的认证流程(简要)推荐资源 从login()到Realm的doGetAuthenticationInfo之间发生了什么?getAuthenticationInfo方法AuthenticatingRealm的getAuthenticationInfo方法有两点功能:通过缓存或者Realm的doGetAuthenticationInfo方法来获取AuthenticationInfo校验AuthenticationToken与AuthenticationInfo

2020-09-07 22:30:14 1116

原创 SpringBoot|处理获取分页数据的请求

返回分页数据列表问题描述现服务端数据库有users表如下:前端需要获取其分页数据列表。实现思路1. 接收前端参数使用PageParam类来接收分页请求的参数。public class PageParam { private int beginLine;// 当前行 private Integer pageSize = 3; private Integer currentPage = 0; public int getBeginLine() {

2020-08-31 23:17:42 5664 1

原创 SpringBoot|通过@Autowired为多实现的接口注入依赖

问题描述现在有UserRepositoryImpl,需要为其注入依赖。@Repositorypublic class UserRepositoryImpl implements UserRepository { @Autowired private JdbcTemplate jdbcTemplate;}在本项目中的IOC容器中,JdbcTemplate有两个实现。 @Bean(name="primaryJdbcTemplate") public JdbcTempl

2020-08-25 21:14:50 1363

原创 SpringBoot服务端接收非JSON参数的三种简单方式

SpringBoot服务端接收非JSON参数的三种方式直接接收@RequestMapping("/hello") public String hello(String name,int age){ return "Hello "+name+", you are "+age+" years old!"; }支持Query参数、Form参数。使用对象接收@RequestMapping(value = "/users",method = RequestMethod.PO

2020-08-24 15:32:20 1293

原创 拟合

拟合例题一次函数线性拟合利用Matlab的工具箱进行一次函数的线性拟合:得到SSE为9.166e+04。指数拟合利用Matlab的工具箱进行指数函数的拟合:得到SSE为6.951e+04。两种拟合方式的对比由指数函数进行拟合得到的SSE明显小于由一次函数进行拟合得到的SSE,所以我们选择使用指数拟合函数。(对于非线性拟合函数来说R2没有意义,所以这里不比较R2。)绘图>> f=@(x)a*exp(b*x);>> fplot(f,[2009,2030])

2020-08-24 13:50:29 344

原创 Golang|区块链UTXO集源码分析

区块链UTXO集源码分析资源go实现区块链前提在未实现UTXO集之前,假设系统需要查询某个钱包地址的余额,系统需要遍历区块链的所有区块,当区块链非常长时,这种做法的成本太高了。UTXO集是未花费交易输出的集合,它存储区块链中所有未花费交易输出。在实现UTXO集后,系统只需要遍历UTXO集就可以得到某个钱包地址的余额(或者其他操作)。它的结构体如下:// UTXOSet represents UTXO settype UTXOSet struct { Blockchain *Blockcha

2020-07-16 11:31:05 595

原创 Golang|区块链数字签名与校验源码分析

区块链数字签名与校验源码分析资源go实现区块链剖析区块链(六): 核心技术之数字签名源码分析钱包// Wallet stores private and public keystype Wallet struct { PrivateKey ecdsa.PrivateKey PublicKey []byte}区块链钱包是私钥和公钥的集合。地址地址的计算过程可以由下图来表示:也就是,系统通过钱包的公钥可以计算出钱包的地址。// GetAddress returns walle

2020-07-15 22:14:36 774 1

原创 Golang|区块链Transaction实现源码分析

区块链Transaction实现源码分析资源go实现区块链程序运行结果源码分析当程序解析到命令行参数时,将调用结构体CLI的createBlockchain方法。这个方法的作用是在本地数据库中创建一个含有创世区块的区块链。(如果在本地数据库中已经含有区块链,则不执行创建)进入到该方法的源码部分。// CreateBlockchain creates a new blockchain DBfunc CreateBlockchain(address string) *Blockchain {

2020-07-14 14:32:45 539

原创 Golang|gob序列化示例

gob序列化问题描述现有结构体Human,利用gob进行序列化与反序列化。注意事项要注意结构体的变量名开头要大写,不然外界访问不到,不能进行序列化。序列化过程与反序列化过程只需要调用gob包下的api即可,详情见源码。实现package mainimport ( "bytes" "encoding/gob" "fmt" "log")type Human struct { Name string Age int}func Serialize(human *Human)

2020-07-13 20:49:18 863

原创 前端向后端传递JSON数据出现乱码问题的解决办法

前端向后端传递JSON数据出现乱码问题解决的解决办法前提Tomcat(默认编码为iso-8859-1)已添加编码过滤器(utf-8)问题描述前端向后端返回JSON,后端得到的JSON字符串中,中文出现乱码{"id":-1,"name":"杩欐槸涓枃瀛楃","deadline":"2020-05-28T12:01:48.222Z","uid":-1,"finish":false}前端AJAX$.ajax({ type : "post", url : url, data :

2020-05-28 20:12:15 5483 1

原创 JDK API动态代理模拟数据库连接池

JDK API动态代理模拟数据库连接池实现:在MyDataSource类中,编写静态方法getConnection,使该方法能够返回一个Connection的代理对象,该代理对象对Connection的close方法进行增强,使close方法不再直接关闭数据库连接而是将数据库连接返回到MyDataSource的连接池(链表或是其他的数据结构)中。这样,外部通过MyDataSource获取Con...

2020-05-07 21:55:33 159

原创 前后端交互JSON工具类

前后端交互JSON工具类网络教程中收集的工具类import com.google.gson.Gson;import javax.servlet.ServletInputStream;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java...

2020-04-28 17:36:57 264

原创 BootStrap4下拉菜单示例

BootStrap4下拉菜单示例效果图如下实现:通过JQuery或者JS可以实现菜单项的悬停效果<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width,...

2020-04-23 17:27:21 1220

原创 BootStrap4登录表单验证示例

BootStrap4登录表单验证示例首先是效果图,如下实现:使用JQuery或者JS在触发表单提交事件的时候,检查表单是否合法。若不合法,给form元素添加上“was-validated”类,并阻止表单的提交。注意使用BootStrap4的表单验证需要给form元素添加novalidate,以此屏蔽浏览器的默认表单检查(浏览器默认的表单检查会覆盖掉BootStrap4的表单检查效果)。C...

2020-04-21 21:30:18 4599

原创 Lambda简单示例

在需要一个函数式接口的地方,使用lambda表达式下面实验两个应用函数式接口的地方其中一个带参数,另外一个不带参数import java.util.function.Consumer;public class LambdaTest { public static void main(String[] args) { repeat(10, () -> System.out.p...

2020-02-26 21:29:24 258

原创 蓝桥杯2016年JavaB组

文章目录煤球数目生日蜡烛凑算式分小组抽签方格填数~~待更新~~煤球数目答案:171700package Contest2016;public class 煤球数目 { public static void main(String[] args) { // TODO Auto-generated method stub int[] arr = new int[101]; a...

2020-02-26 15:53:39 354

原创 MySQL|JDBCUtils

工具类用于简化获取连接对象、关闭对象的步骤使用前提:在project的src下需要有.properties文件JDBCUtilsimport java.io.FileReader;import java.io.IOException;import java.net.URL;import java.sql.Connection;import java.sql.DriverManager...

2020-02-25 20:33:00 186

原创 外卖店优先级

思路将每个商家的接单时刻用优先队列贮存:PriorityQueue<Integer>[] arr = new PriorityQueue[N + 1]其中,arr[i]表示第i个商家的接单时刻记录随后,检查每个商家的接单记录来判断,在T时刻商家是否处于缓存队列中:for (int i = 1; i <= N; i++) {// 判断每个商家是否在T时刻处于缓存队列中...

2020-02-21 15:05:16 384

原创 MySQL|对表结构的简单修改

文章目录增加一列删除一列修改一列修改列名修改列的数据类型增加一列ALTER TABLE 表名 ADD COLUMN 列名 列数据类型 列约束;配合AFTER和FIRST可以指定新增列的插入位置删除一列ALTER TABLE 表名 DROP CLOUMN 列名;修改一列修改列名ALTER TABLE 表名 CHANGE 原列名 新列名 数据类型 数据约束;修改列的数据类型法...

2020-02-21 11:50:15 170

原创 搜索|数字三角形

传送门思路枚举全排列所有的可能性,然后验证。在验证的时候,有如下规律:当n=1时,排列可得到的值为comb[1]当n=2时,排列可得到的值为comb[1]+comb[2]当n=3时,排列可得到的值为comb[1]+2comb[2]+comb[3]当n=4时,排列可得到的值为comb[1]+3comb[2]+3*comb[3]+comb[4]…实际上,一个排列能够得到的值可以写为:...

2020-02-11 21:47:03 195

原创 带余数动态规划|糖果

计蒜客-T1219题解传送门Code记忆化搜索写起来比较方便,还比较好理解。#include<iostream>#include<algorithm>#include<string.h>#define INF 100 * 1000000;using namespace std;int n, k;int val[100 + 5];int d...

2020-02-11 18:58:36 337

原创 动态规划|分蛋糕

OpenJudge这题OJ没有java提交选项,用c++写了思路待补充Code#include<iostream>#include <algorithm>#include<string.h>using namespace std;const int INF = 10000;int W, H, M;int record[25][25][25...

2020-02-09 22:15:58 386

原创 动态规划|Help Jimmy

解题思路

2020-02-08 16:11:14 297

原创 动态规划|最长公共子序列、最长上升子序列

文章目录LISLCSLIS百练-2757package 动态规划;import java.util.Scanner;/** * 單串 * @author DELL * */public class 最长上升子序列 { static int n; static int[] data; static int[] record; public static void ...

2020-02-04 15:18:58 181

原创 蓝桥杯2015年JavaB组

文章目录三角形面积立方自变身三羊献瑞循环节长度九数组分数三角形面积28立方自变身答案为6package Contest_2015;/** * 答案为6 * @author Admin * */public class 立方变身 { public static void main(String[] args) { long count = 0; for (int i...

2020-01-22 23:55:14 596

原创 蓝桥杯2014年JavaB组

文章目录武功秘籍切面条猜字母大衍数列圆周率奇怪的分式武功秘籍将信息输出一下,手动判断就可以。答案为7package Contest_2014;/** * 答案是7 * @author Admin * */public class 武功秘籍 { public static void main(String[] args) { int num = 0; for (int ...

2020-01-17 15:49:52 663

原创 带权并查集|食物链

POJ-1182这题挺恶心的,以后再补充Codepackage DisjoinSet;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.util.StringTokenize...

2020-01-17 13:49:26 99

原创 带权并查集|How many answer are we wrong

HDU-3038题面题目的意思大概是,连续给出多条信息,每条信息代表一段区间和。比如,1 4 5 代表[1,4]的和为5,也可以表示为(0,5]的区间和为5。然后,要求我们判断出无效的(也就是错误的)信息数目。例如,已知(0,4]区间和为5,(2,4]的区间和为2,此时我们可以计算出(0,2]的区间和为3。假如现在给了一条信息为:(0,2]的区间和为4,那么我们判断这条信息为错误信息,错误...

2020-01-14 20:30:57 123

原创 蓝桥杯2013年JavaB组

文章目录世纪末的星期马虎的算式振兴中华振兴中华优化I振兴中华优化II黄金连分数待更新世纪末的星期package Contest_2013;import java.util.Calendar;/** * * 曾有邪教称1999年12月31日是世界末日。当然该谣言已经不攻自破。 * * 还有人称今后的某个世纪末的12月31日,如果是星期一则会.... * * 有趣的是,任...

2020-01-09 03:42:43 851 2

原创 Huffman编码器

Huffman编码器文章目录Huffman编码器HuffmanHuffmanTreeHuffmanTreeNode待完成Huffmanimport java.util.Comparator;import java.util.PriorityQueue;/* * 只处理小写英文字母文本 * */public class Huffman { private String unco...

2019-12-03 22:07:57 233

原创 实现能够将二叉树中序遍历和后序遍历的结果来重建二叉树的算法

实现能够将二叉树中序遍历和后序遍历的结果来重建二叉树的算法本文的树用静态链表表示思路和测试待补充package Lab8;public class Task2 { static int[] inOrder = { 2, 5, 7, 8, 9, 12 }; static int[] postOrder = { 7, 5, 2, 12, 9, 8 }; static Node[] tr...

2019-11-30 13:37:53 321

原创 DFS|Saving James Bond - Easy Version

Saving James Bond - Easy VersionThis time let us consider the situation in the movie “Live and Let Die” in which James Bond, the world’s most famous spy, was captured by a group of drug dealers. He w...

2019-11-23 19:56:24 106

原创 邻接矩阵与邻接表

邻接矩阵文章目录邻接矩阵邻接矩阵表示邻接矩阵的缺点对于无向图的存储,如何节省一半的存储空间使用邻接表,只存储邻接顶点邻接矩阵表示package Graph;/* 邻接矩阵表示图 */public class Graph { class Edge { // 定义边 int v1, v2; // 有向边<v1, v2> int weight; // 权值 p...

2019-11-16 14:05:50 578

原创 DFS|用递归的方法来显示由一群人组队的所有可能方案

输入:人群的人数n以及组队的人数k输出:显示所有的组合样例输入:52样例输出:A BA CA DA EB CB DB EC DC ED E提示:用字符A-Z代表每个组员,每队表示为一个字符串。思路:首先以从A、B、C、D四个组员中选两个为例,从简单的情况进行分析。下面列出组合情况:AB、AC、AD(A打头)BC、BD(B打头)CD(C打头)...

2019-11-15 12:52:36 872

原创 数组指针

数组指针本文通过一维数组指针来完成对一维数组的遍历。#include<iostream>using namespace std;int main() { int a[10] = {1,2,3,4,5,6,7,8,9,12}; int(*arrPtr)[10] = (int (*)[10])a; // 一个指针,它指向一个有10个int元素的数组 cout &lt...

2019-11-12 20:11:41 87

原创 是否同一棵二叉搜索树

给定一个插入序列就可以唯一确定一棵二叉搜索树。然而,一棵给定的二叉搜索树却可以由多种不同的插入序列得到。例如分别按照序列{2, 1, 3}和{2, 3, 1}插入初始为空的二叉搜索树,都得到一样的结果。于是对于输入的各种插入序列,你需要判断它们是否能生成一样的二叉搜索树。输入格式:输入包含若干组测试数据。每组数据的第1行给出两个正整数N(≤10)和L,分别是每个序列插入元素的个数和需要检查的序...

2019-11-09 14:53:27 358

原创 AVL树

AVL平衡二叉树的高度(一个根节点时,高度为0)平衡二叉树调整RR旋转注意节点BL在RR插入后所作出的调整LL旋转注意节点BR在LL插入后所做出的的调整LR旋转注意调整是对哪三个节点作出调整RL旋转注意调整是对哪三个节点作出调整...

2019-11-09 12:01:15 134

原创 二分搜索树的寻找、插入与删除

二分搜索树的寻找、插入与删除文章目录二分搜索树的寻找、插入与删除节点定义寻找findfindMaxfindMin插入删除节点定义struct TNode { /* 树结点定义 */ ElementType Data; /* 结点数据 */ TNode* Left; /* 指向左子树 */ TNode* Right; /* 指向右子树 */};寻找将key值与...

2019-11-02 19:57:54 274

空空如也

空空如也

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

TA关注的人

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