自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 栈与队列的实现

【代码】栈与队列的实现。

2023-10-21 12:45:18 61

原创 八大排序算法

【代码】八大排序算法。

2023-10-07 21:07:21 134

原创 单调队列优化DP

【代码】单调队列优化DP。

2022-11-08 23:13:31 165 1

原创 数位DP习题

数位DP习题。

2022-10-31 21:25:58 405

原创 AcWing部分基础题

AcWing基础题部分个人题解

2022-09-10 10:28:41 226

原创 最小生成树习题

最短网络#include<iostream>#include<cstring>using namespace std;const int N=110;int g[N][N];int dist[N];int n;bool st[N];int prim(){ int res=0; memset(dist,0x3f,sizeof dist); dist[1]=0; for(int i=1;i<=n;i++){ int

2022-05-18 16:37:43 163

原创 好题456

空调#include <iostream>#include <cstring>#include <algorithm>using namespace std;const int N = 100010;int n;int a[N];int main(){ scanf("%d", &n); for (int i = 1; i <= n; i ++ ) scanf("%d", &a[i]); for (in

2022-05-17 17:27:23 113

原创 树状数组与线段树

1.树状数组树状数组支持动态维护一个数组,支持单点修改,区间求和,区间修改本文只给出例题与参考资料树状数组经典图片参考博客参考视频楼兰图腾#include<bits/stdc++.h>#define int long longusing namespace std;const int N=200009;int high[N],low[N];int n;int a[N];int tr[N];signed lowbit(int x){ return x&amp

2022-05-02 15:37:27 485

原创 提高课二刷疑难杂题

方格取数#include<bits/stdc++.h>using namespace std;const int N=11;int g[N][N];int f[2*N][N][N]; // 假设有两个小朋友在同时从A走向B,g[k][i1][i2]=w,表示第一个小朋友//走到第(i1,k-i1),第二个小朋友走到(i2,k-i2)时的最小值为wint main(){ int n; cin >> n; int a,b,c; while(c

2022-04-22 21:37:50 319

原创 最短路习题

热浪#include<bits/stdc++.h>using namespace std;const int N=20000;int e[N],ne[N],w[N],idx,h[N/2];int n,m,ts,te;int dist[N/2];bool st[N/2];void add(int a,int b,int c){ e[idx]=b,ne[idx]=h[a],w[idx]=c,h[a]=idx++;}int spfa(){ memset(dist,0

2022-03-31 23:03:52 244

原创 双指针算法

双指针算法一般的时间复杂带为o(n),一般先想出暴力算法,暴力算法一般是两重循环o(n^2)的,我们寻找某些单调性优化掉第二重循环,即为双指针算法最长连续不重复子序列//暴力 for (int i = 0; i < n; i++) for (int j = 0; j <= i; j++) if (check(v1,j, i) == 0)//检查 i 和 j 之间是否有重复的数字 res = max(res, i

2022-03-28 22:29:41 402

原创 数据结构 并查集

并查集用于合并两个集合o(1),查询两个元素是否在一个集合里面o(1)合并集合#include<bits/stdc++.h>using namespace std;const int N=1e5+10;int f[N];int n,m;int find(int x){ if(f[x]!=x) f[x]=find(f[x]); return f[x];}int main(){ cin >> n >> m; for(int i

2022-03-24 19:01:32 4972

原创 BFS 算法提高课

池塘计数#include<bits/stdc++.h>using namespace std;const int N=1010;char g[N][N];bool st[N][N];int n,m;int cnt;int dist[N][N];int dx[]={0,0,-1,1,1,1,-1,-1},dy[]={-1,1,0,0,1,-1,-1,1};void bfs(int x,int y){ queue<pair<int,int>>q;

2022-03-19 22:55:05 117

原创 状态压缩DP

小国王#include<bits/stdc++.h>using namespace std;typedef long long LL;const int N=12,M=1<<10,K=110;LL f[N][K][M]; //f[i][k][j]=x,表示前i行放了k个国王且当前状态时j的所有方案数int cnt[M]; // cnt[i]=j , 表示状态i的1的个数为j个vector<int>state; // state[i]=j // i单纯表示下

2022-03-15 22:01:39 248

原创 质数与约数

1.试触发判定质数 o(根号N)如果a*b=n ,那么一定有a<n且b>n或者同时等于n,如果a存在则b一定存在,如果b存在那么a一定存在,我们不必枚举到n,所以我们只需要枚举到根号n即可#include<bits/stdc++.h>using namespace std;int t,n;int main(){ cin >> t; while(t--){ cin >> n; if(n==1){

2022-03-13 23:23:41 790

原创 树形行dp

树的重心#include<bits/stdc++.h>using namespace std;const int N=1e5+10;const int M=2*N;//以有向图的格式存储无向图,所以每个节点至多对应2n-2条边int st[M];int n;int h[M],idx,e[M],ne[M]; //链式向前星int ans=0x3f3f3f;void add(int a,int b){ //头插法把b插到a的头节点的后面 e[idx]=b; ne

2022-03-09 00:07:00 275

原创 区间Dp问题

石子合并#include<bits/stdc++.h>using namespace std;const int N=310;int n;int f[N][N];int a[N];int main(){ cin >> n; memset(f,0x3f,sizeof f); for(int i=1;i<=n;i++){ cin >> a[i]; a[i]+=a[i-1]; f[i][

2022-03-06 18:43:21 143

原创 背包类题型

宠物小精灵之收服//二维费用的01背包,值得注意的是 我们平常做题时,费用可以为0,即是范围为0~v//,本题限制了费用不能为0,即范围是1~v那么我们只需要改变一下范围就好了即//变为 0~v-1 就可以直接套用模板了#include<bits/stdc++.h>using namespace std;int n,m,k;int use[1010],hurt[1010];int f[1010][510];int main(){ cin >> m >

2022-02-13 22:28:16 486

原创 最长上升子序列模型题目

友好城市//轻量级思维题目 将题目转化为最长上升子序列问题 #include<bits/stdc++.h>using namespace std;const int N=1e4+10;pair<int,int>p[N];int n;int f[N];int main(){ cin >> n ; for(int i=1;i<=n;i++){ cin >> p[i].first >> p[i].s

2022-02-13 10:10:10 478

转载 dp算法.

01背包有 N 件物品和一个容量是 V 的背包。每件物品只能使用一次。第 i 件物品的体积是 vi,价值是 wi。求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。输出最大价值。输入格式第一行两个整数,N,V,用空格隔开,分别表示物品数量和背包容积。接下来有 N 行,每行两个整数 vi,wi,用空格隔开,分别表示第 i 件物品的体积和价值。输出格式输出一个整数,表示最大价值。数据范围0<N,V≤10000<vi,wi≤1000输入样例4 51

2022-01-20 10:20:51 102

原创 洛谷 二分搜索算法官方题单 个人题解 持续更新

第一题 查找#include<bits/stdc++.h>using namespace std;const int N=1e6+10;int a[N];int main(){ int n,m; cin >> n >> m; for(int i=0;i<n;i++){ cin >> a[i]; } while(m--){ int q; cin >&gt

2021-11-23 20:47:15 843

转载 由数据范围反推算法复杂度以及算法内容

一般ACM或者笔试题的时间限制是1秒或2秒。在这种情况下,C++代码中的操作次数控制在 107∼108107∼108 为最佳。下面给出在不同数据范围下,代码的时间复杂度和算法该如何选择:n≤30n≤30, 指数级别, dfs+剪枝,状态压缩dpn≤100n≤100 => O(n3)O(n3),floyd,dp,高斯消元n≤1000n≤1000 => O(n2)O(n2),O(n2logn)O(n2logn),dp,二分,朴素版Dijkstra、朴素版Prim、Bellman-Ford

2021-11-03 22:41:33 88

原创 计算机组成原理 第三章 存储系统

本章总览一个字节为8位二进制位位,字节,字是计算机数据存储的单位,位是最小的存储单位,为一个位存储一个1位的二进制码,一个字节由八位组成,字通常为16,32,或64个位组成位 :bit字节:Byte字:word即1B=8b。主存储器的基本模型一行存储元就是一个存储单元这样的模型是有限制的,一次只能使一行控制信息有效片选线就是整个芯片的开关,比如有什么低电平有效,高电平有效n个地址线就是n为地址,地址线数对应MAR 位数,同理数据线数对应MDR位数,存储字长是存储单元每一行具有的

2021-10-14 11:29:08 602

转载 飞行员兄弟 开关问题

飞行员兄弟”这个游戏,需要玩家顺利的打开一个拥有 16 个把手的冰箱。已知每个把手可以处于以下两种状态之一:打开或关闭。只有当所有把手都打开时,冰箱才会打开。把手可以表示为一个 4×4 的矩阵,您可以改变任何一个位置 [i,j] 上把手的状态。但是,这也会使得第 i 行和第 j 列上的所有把手的状态也随着改变。请你求出打开冰箱所需的切换把手的次数最小值是多少。输入格式输入一共包含四行,每行包含四个把手的初始状态。符号 + 表示把手处于闭合状态,而符号 - 表示把手处于打开状态。至少一个手柄

2021-09-22 21:25:56 83

原创 计算机组成原理 总线

概述有地址总线,数据总线和控制总线总线的分类细说系统总线

2021-09-17 17:44:15 165

原创 Linux shell&ssh

Shell讲义

2021-09-17 10:03:41 68

原创 Linux tmux和vim

123

2021-09-06 23:44:32 323

原创 linux第一课

一些基本概念根目录是 / ,根目录下有很多文件夹他们分别存有很多不同的内容,比如lib文件存一些头文件。绝对路径 的开头一定是 / 代表根目录。这是绝对路径与相对路径的区别。俩个点表示上级目录 . 表示当前目录~/ 表示家目录也就是home目录(记笔记可以集中注意力)文件常用指令小tips:所有前面带.的文件是隐藏文件cd -返回上次目录...

2021-08-24 15:52:55 66

原创 计算机组成原理 第二章 数据的表示和运算

本章探讨的两大主题2.1.1 进位计数制基于八进制的加法运算 逢8进1每几位为一组时,如果不够,则最前面的或者最后面的补0即可(251.5)8 括号中的数每一个数用三个二进制数表示即可正号用 0 表示,负号用1表示...

2021-07-27 22:47:40 87

原创 计算机组成原理 第一章

1.0 你好,我是计算机组成原理低电压就是低电平,高电压就是高电平1.1 计算机的发展计算机组成原理主要探究硬件逻辑元件:用来处理电信号的基本单元

2021-07-24 22:16:42 325 3

原创 数据结构 哈希表 散列表

哈希表实现哈希表的两种方法:处理哈希冲突:开放寻址法,拉链发

2021-07-07 16:17:24 75

原创 数据结构 排序

前提

2021-07-07 11:10:32 48

原创 数据结构 最小生成树 拓扑排序

kruskal算法

2021-07-07 10:46:49 89

原创 数据结构 图 中

最短路径问题结束时多源最短路floyd

2021-07-06 17:29:16 73

原创 MySQL 索引 视图 数据库数据的导入和导出

2021-06-21 13:54:09 86

原创 MySQL 事务

事务给我们提供了一个返回的机会=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=-=-=–=-=-=-=-------------------------事务的一些特征

2021-06-20 16:31:11 62

原创 MySQL连接查询

2021-06-20 16:05:36 45

原创 MySQL查询学习

制造数据查询练习desc降序,asc升序like 模糊查询 having 分组条件多表查询子查询group by 和having配合使用,having相当于where

2021-06-20 15:47:11 95

原创 Mysql 三大范式

p16有总结数据库的三大设计范式第一范式1NF数据表中的所有字段都是不可分割的原子值字段值还可以继续拆分的,就不满足第一范式第二范式2NF第三范式3NF

2021-06-19 19:58:46 65

原创 java 泛型

tips:object 可以代表所有引用类型泛型类泛型就是可以表示多种类型,如int,string,bool泛型方法泛型接口 p253

2021-06-18 09:24:06 41

空空如也

空空如也

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

TA关注的人

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