多学习。

05 2022 档案

摘要:只需要在配置文件中加入以下:销毁session、注销路径为logout.do、注销跳转页面 <!-- 退出 --> <security:logout invalidate-session="true" logout-url="/logout.do" logout-success-url="/logi 阅读全文
posted @ 2022-05-31 22:03 czyaaa 阅读(91) 评论(0) 推荐(0) 编辑
摘要:AcWing858.Prim算法求最小生成树 题解 [注:先累加再更新防止自环使得dist[j]变小(自环为负数dist[j] = min(dist[j], gt][j]),j==t Prim的思路就是每次找出距离最近的点,再用距离最近的点更新其他点使其变得更近,寻得n-1条边成为最小生成树 #in 阅读全文
posted @ 2022-05-31 17:10 czyaaa 阅读(33) 评论(0) 推荐(0) 编辑
摘要:二分图:所有点可以划分为两个集合,两个集合中的点存在相连边,而集合内部的点不存在相连的边,故不能含有奇数环,不然会导致某个点无法划分到这两个集合中 题目 朴素Prim:AcWing858.Prim算法求最小生成树 Kruskal:AcWing859.Kruskal算法求最小生成树 染色法判断二分图: 阅读全文
posted @ 2022-05-31 17:10 czyaaa 阅读(17) 评论(0) 推荐(0) 编辑
摘要:介绍 在Spring Security中如果想要使用数据进行认证操作,有很多种操作方式,这里我们介绍使用UserDetails、 UserDetailsService来完成操作。 UserDetails public interface UserDetails extends Serializabl 阅读全文
posted @ 2022-05-29 21:58 czyaaa 阅读(231) 评论(0) 推荐(0) 编辑
摘要:AcWing854.Floyd求最短路 题解 注意:k, i, j的顺序不能改变,必须以k作为桥梁 #include <iostream> #include <cstring> using namespace std; const int N = 210; int g[N][N], n, m, k; 阅读全文
posted @ 2022-05-29 17:19 czyaaa 阅读(24) 评论(0) 推荐(0) 编辑
摘要:AcWing852.spfa判断负环 题解 判断负环的思路:利用抽屉原理,当边数为n时,若要连成一条无环的直线我们需要n+1个点,但我们只有n个点,故可以判断出存在环。 且由于spfa更新路径的特性,代表这个环会使得路径变小,即这个环为负权环 #include <iostream> #include 阅读全文
posted @ 2022-05-29 16:25 czyaaa 阅读(42) 评论(0) 推荐(0) 编辑
摘要:AcWing851.spfa求最短路 题解 spfa算法即为Bellman-Ford的优化,只有每次dist[a]发生了变化才需要更新对应的dist[b],通过此减少循环次数 #include <iostream> #include <cstring> #include <queue> using 阅读全文
posted @ 2022-05-29 15:55 czyaaa 阅读(36) 评论(0) 推荐(0) 编辑
摘要:AcWing853.有边数限制的最短路 题解 存在负权回路可能会导致无法求最短路,比如说图中 2的自环,没转一圈距离-1,我们求1到5的距离可以转无穷圈2,即1到2的距离为 -无穷 循环n次求的是长度不超过n条边的最短路 #include <iostream> #include <cstring> 阅读全文
posted @ 2022-05-29 12:01 czyaaa 阅读(28) 评论(0) 推荐(0) 编辑
摘要:SpringSecurity介绍 SpringSecurity是一款权限框架,为项目组提供安全认证服务。安全主要来源于两个操作: “认证”,是为用户建立一个他所声明的主体。主体一般是指用户,设备或可以在你系统中执行动作的其他系统。 “授权”指的是一个用户能否在你的应用中执行某个操作,在到达授权判断之 阅读全文
posted @ 2022-05-26 22:42 czyaaa 阅读(73) 评论(0) 推荐(0) 编辑
摘要:表关系 Orders与Travller为多对多关系 Orders:订单表,一个订单有多个traveller。 Traveller:游客表,一个Travller有多个订单 中间表:order_traveller,保存有两者的id 业务需求:查询订单详情包括订单中的多个旅客 dao层代码: public 阅读全文
posted @ 2022-05-26 20:51 czyaaa 阅读(757) 评论(0) 推荐(0) 编辑
摘要:AcWing850.Dijkstra求最短路 II 题解 #include <iostream> #include <cstring> #include <queue> #include <vector> using namespace std; const int N = 1e6 + 10; ty 阅读全文
posted @ 2022-05-25 20:40 czyaaa 阅读(42) 评论(0) 推荐(0) 编辑
摘要:详解 规定n为点数, m为边数 稀疏图用堆优化Dijkstra, 稠密图用朴素Dijkstra 题目 朴素Dijkstra:AcWing849.Dijkstra求最短路 I 堆优化Dijkstra:AcWing850.Dijkstra求最短路 II bellman-ford:AcWing853.有边 阅读全文
posted @ 2022-05-24 21:55 czyaaa 阅读(9) 评论(0) 推荐(0) 编辑
摘要:AcWing849.Dijkstra求最短路 I 题解 注意:本题存在重边,故g[x][y] = min(g[x][y], z); #include <iostream> #include <cstdio> #include <cstring> using namespace std; const 阅读全文
posted @ 2022-05-24 21:54 czyaaa 阅读(22) 评论(0) 推荐(0) 编辑
摘要:依赖 <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>5.1.2</version> </dependency> 配置 单纯使用mybatis无spr 阅读全文
posted @ 2022-05-24 20:36 czyaaa 阅读(99) 评论(0) 推荐(0) 编辑
摘要:AcWing848.有向图的拓扑序列 题解 额外知识:有向无环图必然有拓扑序列 将入度为0的点放入队列,再逐一拿出,那些以此点为入度的点减1,若有新的入度为0则放入队列。 #include <iostream> #include <cstdio> #include <cstring> using n 阅读全文
posted @ 2022-05-24 10:04 czyaaa 阅读(43) 评论(0) 推荐(0) 编辑
摘要:AcWing845.八数码 题解 还是一道bfs标准题,每次存入4个方向的状态,直到找到最终状态 #include <iostream> #include <cstdio> #include <unordered_map> #include <queue> using namespace std; 阅读全文
posted @ 2022-05-24 09:27 czyaaa 阅读(18) 评论(0) 推荐(0) 编辑
摘要:AcWing847.图中点的层次 题解 #include <iostream> #include <cstring> #include <queue> #include <cstdio> using namespace std; const int N = 1e5 + 10; int n, m; q 阅读全文
posted @ 2022-05-23 22:47 czyaaa 阅读(28) 评论(0) 推荐(0) 编辑
摘要:AcWing846.树的重心 题解 树的深度优先遍历:可以算出各子树的结点数 #include <iostream> #include <cstdio> #include <cstring> using namespace std; const int N = 1e5 + 10; int ans = 阅读全文
posted @ 2022-05-23 22:11 czyaaa 阅读(30) 评论(0) 推荐(0) 编辑
摘要:AcWing844.走迷宫 题解 stl #include <iostream> #include <cstring> #include <queue> using namespace std; typedef pair<int,int> PII; const int N = 110; queue< 阅读全文
posted @ 2022-05-23 15:50 czyaaa 阅读(30) 评论(0) 推荐(0) 编辑
摘要:AcWing843.n-皇后问题 题解 解法一:对每一行进行遍历,因为皇后不在同一列,故每一行取不同列(列行转换同理) #include <iostream> #include <cstdio> //对每一行进行遍历,由于皇后不能在同一列,故每一行的摆放列都不同 using namespace st 阅读全文
posted @ 2022-05-22 17:14 czyaaa 阅读(39) 评论(0) 推荐(0) 编辑
摘要:AcWing842.排列数字 题解 #include <iostream> using namespace std; const int N = 10; bool vis[N]; int nums[N], n; void dfs(int u) { if(u == n + 1) { for(int i 阅读全文
posted @ 2022-05-22 16:54 czyaaa 阅读(27) 评论(0) 推荐(0) 编辑
摘要:AcWing 143. 最大异或对 题解 将每个数的二进制形式存入Trie树,再对每个数的每一位进行遍历,若为1则找0,若为0则找1。 #include <iostream> using namespace std; const int N = 1e5 + 10, M = 3100010; //每个 阅读全文
posted @ 2022-05-21 22:55 czyaaa 阅读(25) 评论(0) 推荐(0) 编辑
摘要:AcWing841. 字符串哈希 题解 前缀字符串哈希 p = 131 或 13331 Q = 2^64 百分之九十九概率不会出现冲突 #include <iostream> using namespace std; const int N = 1e5 + 10, P = 131; typedef 阅读全文
posted @ 2022-05-21 11:04 czyaaa 阅读(28) 评论(0) 推荐(0) 编辑
摘要:AcWing840. 模拟散列表 题解 哈希函数:将题目输入的数映入成0~10^5范围的下标存入数组。 哈希取模的数最好是质数,这样冲突的概率最小(数学上存在证明,感兴趣可去搜) 拉链法 #include <iostream> #include <cstdio> #include <cstring> 阅读全文
posted @ 2022-05-20 22:43 czyaaa 阅读(145) 评论(0) 推荐(0) 编辑
摘要:AcWing839. 模拟堆 题解 #include <iostream> using namespace std; const int N = 1e5+10; //hp:堆中下标k,集合中下标为hp[k] //ph:集合中下标k,堆中下标ph[k] int p[N], h[N], hp[N], p 阅读全文
posted @ 2022-05-20 21:30 czyaaa 阅读(56) 评论(0) 推荐(0) 编辑
摘要:堆 (下标一定要从0, 0无法乘2) 该讲解的是小根堆,如果是大根堆,则需转换一下思维 堆是一颗完全二叉树,且最后一层是从左往右存储的,堆每个父节点都小于等于左右结点,故根节点为最小值 堆有两个操作,其余所有操作都可由这两个操作组合而成: down(x):当x结点的值变大的时候,我们要将x向下移动, 阅读全文
posted @ 2022-05-20 17:24 czyaaa 阅读(63) 评论(0) 推荐(0) 编辑
摘要:AcWing240. 食物链 题解 (2->1代表1吃2) 轻易可知,该食物链成一个环,只要得知该环中两条边,即可推出第三条边 将所有点存储在一个集合中,集合的边表示结点之间的关系,利用点到根节点的距离判断种类,故我们需要额外维护一个保存到父节点距离的数组。 路径压缩:还是将父节点直接改为根节点,距 阅读全文
posted @ 2022-05-19 12:02 czyaaa 阅读(43) 评论(0) 推荐(0) 编辑
摘要:AcWing837. 连通块中点的数量 题解 #include <iostream> #include <cstdio> using namespace std; const int N = 1e5 + 10; int p[N], cnt[N], n, m, x, y; int find(int x 阅读全文
posted @ 2022-05-18 21:29 czyaaa 阅读(31) 评论(0) 推荐(1) 编辑
摘要:并查集 处理问题 1.将两个集合合并 2.询问两个集合是否在一个集合当中 暴力思维 1.询问两个元素是否在一个集合 belong[x] = a; //元素x在a集合 if(belong[x] == belong[y]) //判断a与b是否在一个集合,复杂度O(1) 2.合并集合 //将a,b集合合并 阅读全文
posted @ 2022-05-18 20:46 czyaaa 阅读(75) 评论(0) 推荐(0) 编辑
摘要:通过web图形界面操作私服 启动nexus服务,然后访问 hhtp://ip地址:8081//nexus 默认账号:admin 默认密码:admin123 几种仓库类型介绍 临时版jar包仓库 第三方jar包仓库 正式版jar包仓库 中央仓库 私服上传jar包 1.修改maven配置文件settin 阅读全文
posted @ 2022-05-17 22:46 czyaaa 阅读(179) 评论(0) 推荐(0) 编辑
摘要:1.拆分与聚合思想 以实际生活为例子: 买家:买家看订单,必须把数据库中订单数据查询出来 卖家:卖家看订单,同样查找数据库中订单数据 买家用的是tb项目,卖家用的是管理系统项目,所属项目不同,可是代码却可相互重用 有的人可能觉得,把代码复制过去不就行了。 一份代码重用:修改维护,只用修改一份。 一份 阅读全文
posted @ 2022-05-17 21:09 czyaaa 阅读(1285) 评论(0) 推荐(0) 编辑
摘要:作用 maven工程是可以父子依赖关系的。 凡是依赖别的项目后,拿到别的项目的依赖包,都属于传递依赖。 比如:当前A项目,被项目B依赖,那么我们A项目中所有jar包都会传递到B项目中。B项目开发者,如果在B项目中也导入同一套jar包,为直接依赖,会覆盖掉A项目的依赖。 为了防止以上情况出现,我们以把 阅读全文
posted @ 2022-05-16 22:24 czyaaa 阅读(77) 评论(0) 推荐(0) 编辑
摘要:AcWing835. Trie字符串统计 题解 Trie高效存储和查询字符串集合的数据结构 Trie树存储:结尾打上标记,表示为结尾 Trie树查找:根据逐个字符查找,能查找到所有字符且具有结尾标记。 #include <iostream> using namespace std; const in 阅读全文
posted @ 2022-05-16 19:35 czyaaa 阅读(32) 评论(0) 推荐(0) 编辑
摘要:ACWing3302.表达式求值 题解 #include <iostream> #include <stack> #include <unordered_map> #include <cstring> using namespace std; unordered_map<char, int> pr{ 阅读全文
posted @ 2022-05-16 16:57 czyaaa 阅读(33) 评论(0) 推荐(0) 编辑
摘要:讲解 我的KMP博客 AcWing831.KMP字符串 题解 本题用find函数会超时,因为find并没有对于找到子串的情况下次使用next。 KMP改进模式 下标从1开始 #include <iostream> #include <cstdio> using namespace std; cons 阅读全文
posted @ 2022-05-14 10:14 czyaaa 阅读(34) 评论(0) 推荐(0) 编辑
摘要:AcWing154. 滑动窗口 题解 暴力做法:直接遍历窗口里的所有元素找出最小值或最大值 寻找性质: 寻找最小:当 a[i] >= a[j] 且 i < j 时, 若在一个窗口中,则可以不考虑a[i],故每次找最小值找队头a[hh]即可 例子: 故整个队列是严格单调的,故称为单调队列 #inclu 阅读全文
posted @ 2022-05-12 20:44 czyaaa 阅读(69) 评论(0) 推荐(0) 编辑
摘要:AcWing830.单调栈 题解 暴力思维:把左边的数放在一个栈,每次从栈中找左边第一个小的数 寻找性质: 什么数该入栈,什么数该出栈? 当 a[i] >= a[j](注意这里一定要等于可以节省很多入栈操作) 且 i < j 时, a[i]永远都不会用到,所以我们应该出栈a[i],入栈a[j]. 由 阅读全文
posted @ 2022-05-12 19:52 czyaaa 阅读(31) 评论(0) 推荐(0) 编辑
摘要:AcWing829.模拟队列 #include <iostream> using namespace std; const int N = 1e5+10; int q[N], hh, tt; int main() { int n, k; cin >> n; string c; while( n -- 阅读全文
posted @ 2022-05-11 19:23 czyaaa 阅读(25) 评论(0) 推荐(0) 编辑
摘要:AcWing828.模拟栈 #include <iostream> using namespace std; const int N = 1e5+10; int stk[N], tt; int main() { int n, k; cin >> n; string c; while(n -- ) { 阅读全文
posted @ 2022-05-11 19:22 czyaaa 阅读(33) 评论(0) 推荐(0) 编辑
摘要:使用数组原因 因为new/malloc一个空间是非常慢,用数组模拟链表效率更高。 单链表:邻接表——AcWing826.单链表 题目 #include <iostream> #include <cstdio> using namespace std; const int N = 1e5+10; in 阅读全文
posted @ 2022-05-11 19:02 czyaaa 阅读(69) 评论(0) 推荐(0) 编辑
摘要:分析 环境配置 1.导入依赖 <!-- 统一管理jar包版本 --> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven.compiler.source>11</maven.co 阅读全文
posted @ 2022-05-10 23:00 czyaaa 阅读(26) 评论(0) 推荐(0) 编辑
摘要:AcWing803. 区间合并 题解 #include <iostream> #include <algorithm> #include <vector> using namespace std; typedef pair<int,int> PII; vector<PII> segs; void m 阅读全文
posted @ 2022-05-10 10:55 czyaaa 阅读(28) 评论(0) 推荐(0) 编辑
摘要:AcWing802.区间和 题解 本题要是一个很长的数轴,已经超过了数组的长度1e6,故我们需要使用离散化压缩空间 #include <iostream> #include <cstdio> #include <vector> #include <algorithm> using namespace 阅读全文
posted @ 2022-05-10 09:50 czyaaa 阅读(40) 评论(0) 推荐(0) 编辑
摘要:离散化应用 离散化模板 vector<int> alls; sort(alls.begin(), alls.end()); alls.erase(unique(alls.begin(),alls.end()), alls.end()); //获取离散化后的映射 int find(int x) { i 阅读全文
posted @ 2022-05-10 09:46 czyaaa 阅读(29) 评论(0) 推荐(0) 编辑
摘要:分析 实现 1.后端controller package com.czy.controller; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.Requ 阅读全文
posted @ 2022-05-09 21:11 czyaaa 阅读(36) 评论(0) 推荐(0) 编辑
摘要:AcWing2816.判断子序列 题解 即在另一个序列中,找到所有本序列的值,且具有相同的排列 #include <iostream> #include <cstdio> using namespace std; const int N = 1e5+10; int a[N], b[N]; int m 阅读全文
posted @ 2022-05-09 15:43 czyaaa 阅读(28) 评论(0) 推荐(0) 编辑
摘要:AcWing 800. 数组元素的目标和 题解 #include <iostream> #include <cstdio> using namespace std; const int N = 1e5+10; int a[N], b[N]; int main() { int n, m, x, i, 阅读全文
posted @ 2022-05-09 15:40 czyaaa 阅读(31) 评论(0) 推荐(0) 编辑
摘要:分析 为防止异常直接显示在浏览器上,我们需要一个异常处理器,转到错误提示页面。 实现 1.编写自定义异常类(做提示信息的) package com.czy.exception; /** * 自定义异常类 */ public class SysException extends Exception{ 阅读全文
posted @ 2022-05-08 22:00 czyaaa 阅读(20) 评论(0) 推荐(0) 编辑
摘要:Acwing799.最长连续不重复子序列 题解 #include <iostream> #include <cstdio> using namespace std; const int N = 1e5+10; int a[N], s[N]; int main() { int n; scanf("%d 阅读全文
posted @ 2022-05-08 20:03 czyaaa 阅读(16) 评论(0) 推荐(0) 编辑
摘要:双指针模板 入门案例——统计单词 #include <iostream> #include <cstring> using namespace std; int main() { string s; getline(cin,s); for(int i = 0; i < s.size(); ++i) 阅读全文
posted @ 2022-05-08 17:57 czyaaa 阅读(37) 评论(0) 推荐(0) 编辑
摘要:分服务器的目的 上传分析 实现 1.导入jar包(jersey) <dependency> <groupId>com.sun.jersey</groupId> <artifactId>jersey-core</artifactId> <version>1.19</version> </depende 阅读全文
posted @ 2022-05-08 17:13 czyaaa 阅读(41) 评论(0) 推荐(0) 编辑
摘要:文件上传的必要前提 文件上传原理 第三方组件实现文件上传 传统文件上传方式 1.导入依赖 <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1 阅读全文
posted @ 2022-05-08 15:17 czyaaa 阅读(513) 评论(0) 推荐(0) 编辑
摘要:AcWing 801. 二进制中1的个数 题解 用lowbit可以找到,最后一个1的位置。 通过lowbit计算每个数二进制1的个数,复杂度O(logn),n个数,一共O(nlogn) #include <iostream> #include <cstdio> const int N = 1e5+1 阅读全文
posted @ 2022-05-08 09:41 czyaaa 阅读(30) 评论(0) 推荐(0) 编辑
摘要:Acwing798.差分矩阵 题解 #include <iostream> #include <cstdio> using namespace std; const int N = 1e3+10; int s[N][N]; void insert(int x, int y, int xx, int 阅读全文
posted @ 2022-05-08 09:34 czyaaa 阅读(36) 评论(0) 推荐(0) 编辑
摘要:Acwing797.差分 题解 #include <iostream> #include <cstdio> using namespace std; const int N = 1e5+10; int b[N]; void insert(int l, int r, int c) { b[l] += 阅读全文
posted @ 2022-05-08 09:18 czyaaa 阅读(26) 评论(0) 推荐(0) 编辑
摘要:Acwing796.子矩阵的和(二维前缀和) 题解 #include <iostream> #include <cstdio> using namespace std; const int N = 1e3+10; int s[N][N]; int main() { int n, m, q; scan 阅读全文
posted @ 2022-05-08 09:07 czyaaa 阅读(29) 评论(0) 推荐(0) 编辑
摘要:Acwing795.前缀和 题解 #include <iostream> #include <cstdio> using namespace std; const int N = 1e5+10; int a[N]; int main() { int n, m; scanf("%d%d",&n,&m) 阅读全文
posted @ 2022-05-08 08:55 czyaaa 阅读(22) 评论(0) 推荐(0) 编辑
摘要:Acwing794.高精度除法 题解 也是一个模拟笔算的过程 #include <iostream> #include <vector> #include <algorithm> using namespace std; vector<int> div(vector<int> &a, int b) 阅读全文
posted @ 2022-05-08 08:47 czyaaa 阅读(28) 评论(0) 推荐(0) 编辑
摘要:Acwing793 题解 一种简化笔算的过程,让大数的逐位去乘小数即可 #include <iostream> #include <vector> using namespace std; vector<int> mult(vector<int> &a, int b) { vector<int> c 阅读全文
posted @ 2022-05-08 08:29 czyaaa 阅读(35) 评论(0) 推荐(0) 编辑
摘要:返回值类型 返回值为String 通过视图解析器,会以返回的String作为页面名称进行页面跳转(注意是跳转不是转发)。 @Controller @RequestMapping("/user") public class UserController { @RequestMapping("/test 阅读全文
posted @ 2022-05-07 22:58 czyaaa 阅读(81) 评论(0) 推荐(0) 编辑
摘要:Acwing790.数的三次方根 题解 做法一:通过二分运算到符合精度要求 #include <iostream> #include <cstdio> using namespace std; #define f 1e-8 int main() { double x; cin >> x; doubl 阅读全文
posted @ 2022-05-07 19:44 czyaaa 阅读(65) 评论(0) 推荐(0) 编辑
摘要:Acwing789.数的范围 题解 最左边界,每次 mid >= x 则 r = mid, 再找左边是否有符合要求的边界。 最右边界,每次 mid ⇐ x 则 l = mid, 再找右边是否有符合要求的边界。(注意当l = r-1时 ,(l+r)>> 1 == l 故我们需要 mid = (l + 阅读全文
posted @ 2022-05-07 19:40 czyaaa 阅读(72) 评论(0) 推荐(0) 编辑
摘要:Acwing792.高精度减法 题解 #include <iostream> #include <vector> using namespace std; bool cmp(vector<int> &a, vector<int> &b) { if(a.size() != b.size()) retu 阅读全文
posted @ 2022-05-07 19:33 czyaaa 阅读(22) 评论(0) 推荐(0) 编辑
摘要:Acwing791.高精度加法 题解 高精度加法 #include <iostream> #include <cstdio> #include <vector> using namespace std; vector<int> add(vector<int> &a, vector<int> &b) 阅读全文
posted @ 2022-05-07 19:09 czyaaa 阅读(33) 评论(0) 推荐(0) 编辑
摘要:Acwing788.逆序对的数量 题解 暴力做法:对每个字符串前或后二选一进行统计,复杂度O(n2)超时 归并排序:由于归并二分的特性,能够保证每个数在没排序前都能统计到(会分到长度为2的序列),同时排序完左右后并不影响右边对于左边的逆序对数,或左边对于右边的逆序对数,时间复杂度O(nlogn) # 阅读全文
posted @ 2022-05-07 11:07 czyaaa 阅读(35) 评论(0) 推荐(0) 编辑
摘要:Acwing787.归并排序 题解 归并排序:采用分治思想,将左右完成排序,再进行一个归并,用左右得出整体的结果 #include <iostream> #include <cstdio> #include <cstring> using namespace std; const int N = 1 阅读全文
posted @ 2022-05-07 10:50 czyaaa 阅读(17) 评论(0) 推荐(0) 编辑
摘要:Acwing786.第k个数 题解 快排本质上就是找出所取数在序列中的位置,再对其左右进行二分。 所以本题用快排可以以O(nlogn)复杂度解出。 #include <iostream> #include <cstdio> using namespace std; const int N = 100 阅读全文
posted @ 2022-05-07 10:40 czyaaa 阅读(33) 评论(0) 推荐(0) 编辑
摘要:Acwing785.快速排序 题目 题解 快排最坏情况为:O(n2),本题若遇到最坏情况会超时,故我们需要优化快排,每次取中间的数,而不是取边界的数 最坏情况分析————序列已经有序: 每次取左区间的数进行快排,每次调用函数遍历r-l次,调用函数次数为n次,时间复杂度O(n2) 每次取中间的数进行快 阅读全文
posted @ 2022-05-07 10:17 czyaaa 阅读(34) 评论(0) 推荐(0) 编辑
摘要:RequestParam 作用:可以解决前台传值名称与后台名字不匹配导致无法接受的问题。 属性:required——是否必须有该值,默认是true,若接受不到该值则会报错400:Bad Request //必须传一个为name的变量,否则会出现400:Bad Request,因为required为t 阅读全文
posted @ 2022-05-05 23:09 czyaaa 阅读(123) 评论(0) 推荐(0) 编辑
摘要:直接以request与response为参数即可获取 @RequestMapping("/testServlet") public String testServlet(HttpServletRequest request, HttpServletResponse response){ System 阅读全文
posted @ 2022-05-04 22:03 czyaaa 阅读(19) 评论(0) 推荐(0) 编辑
摘要:请求参数的绑定说明 1.绑定机制 只需要在方法中的参数写上变量名与参数名相同的形参,即可自动获取。 底层实现:通过反射获取形参的名字,再如servlet那样通过request获取参数。 2.支持的数据类型 基本数据类型和字符串类型 实体类型(JavaBean) 集合数据类型(List、map集合等) 阅读全文
posted @ 2022-05-04 21:49 czyaaa 阅读(40) 评论(0) 推荐(0) 编辑
摘要:作用 用于请求URL和处理请求方法之间的对应关系 位置 可以放在方法上或类上 放在类上类似于多级目录,例如:user/testRequestMapping @Controller @RequestMapping("/user") public class HelloController { @Req 阅读全文
posted @ 2022-05-04 17:31 czyaaa 阅读(319) 评论(0) 推荐(0) 编辑
摘要:需求分析 编写过程 1.导入相关jar包 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSc 阅读全文
posted @ 2022-05-01 17:52 czyaaa 阅读(26) 评论(0) 推荐(0) 编辑
摘要:题目 题解 #include <iostream> #include <cstring> using namespace std; typedef long long LL; const int N = 3; int n, m; void mult(int c[], int a[], int b[] 阅读全文
posted @ 2022-05-01 10:28 czyaaa 阅读(25) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示