自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

菱形继承

个人博客 iscas-glm.github.io

  • 博客(472)
  • 资源 (3)
  • 收藏
  • 关注

原创 LeetCode 数据库解题目录(mysql版&含vip题)

花重金氪了一个力扣会员 就为了刷上锁的vip题 数据库其实挺重要的以下是解题目录:175. 组合两个表176. 第二高的薪水

2021-03-24 23:15:02 1250 24

原创 一文彻底解决pip安装时速度慢的问题

使用Python的时候需要安装各种模块,而pip是很强大的模块安装工具,但是由于国外官方pypi经常被墙,导致不可用,所以我们最好是将自己使用的pip源更换一下,这样就能解决被墙导致的装不上库的烦恼。最有效且成功率几乎百分百的方法:使用国内源,笔者这里是使用清华大学的镜像源每次在cmd命令行下以如下格式输入pip install -i https://pypi.tuna.tsin...

2019-11-14 23:04:22 2790 19

原创 软件工程七大设计原则

接口隔离原则:一个类对另一个类的依赖应该建立在最小的接口上,应该要最小化接口,使得所有实现接口的类完全实现接口中的函数合成复用原则:如果想要实现一个新类,最好是基于原有类的api进行扩展,而不是选择继承这种方式破坏基类的封闭性迪米特法则:愚民政策,老死不相往来,每个模块之间单线联系,出了事只会断掉一环而不是全局。对象之间的调用仅限于对方在逻辑上与自身有之间关系单一职责法则:一个模块只完成一项任务,实现高内聚,可以提高模块的可移植性和重用性开闭原则:对拓展开放,对修改关闭,比较玄学。里氏代

2022-01-01 20:02:33 1262

原创 AcWing 1088. 旅行问题(前缀和 单调队列优化dp 破环成链 )

题目链接:1088 旅行问题思路:1.破环成链,加上一倍这是常规操作。2.引用两张图:顺时针,我们可以倒着遍历,为什么呢,是因为我们可以在倒着遍历的时候处理到后n个的窗口最小值,然后遍历到前n个的时候我们就可以将第i个和窗口最值比较,只要比这个最值小就可以保证环绕一圈逆时针,注意到有几个不同:1.首先i点是当前点油量减去到前一个点的距离,那么这里就要考虑到第一个点,就是第n个点到下一个点(第一个点)的距离2.其实本质是一样的,那么我们就要正着处理,处理到后n个就处理完了前n给的窗口最小

2021-10-13 00:07:22 401

原创 2021-10-10-Acwin1087. 修剪草坪(单调队列优化dp)

题目链接:https://www.acwing.com/problem/content/1089/思路见下图:代码:#include<iostream>using namespace std;#define int long longconst int N=1e5+10;int f[N],n,k,s[N];int q[N];int g(int i){ if(!i)return 0; return f[i-1]-s[i];}signed main(){

2021-10-10 20:13:27 263

原创 AcWing 300. 任务安排1( 前缀和 dp优化)

思路:代码:#include<iostream>#include<limits.h>#include<cstring>#define int long longusing namespace std;const int N=5010;int n,f[N],sumt[N],sumc[N],s;//f[i][j]=f[k][j-1]+(t[1]+...+t[i]+j*s)*(c[k+1]+...+c[i])signed main(){ cin&.

2021-10-07 13:44:45 140

原创 Goland 解决proxy、go get超时问题

安装 golang gin 依赖包的时候,发现长时间没有响应,无法下载,从返回的错误信息看应该是国内无法访问 golang.org。解决办法使用国内七牛云的 go module 镜像。参考 https://github.com/goproxy/goproxy.cn。golang 1.13 可以直接执行:go env -w GO111MODULE=ongo env -w GOPROXY=https://goproxy.cn,direct然后再次使用 go get 下载 gin 依

2021-08-30 20:46:38 1066

原创 关于DMA(Direct memory access)比较通俗浅白的理解

什么是DMA?DMA就是不通过CPU来实现外设与存储器之间数据交换的控制器,是硬件DMA有什么优势?如果通过CPU来传送,分为轮询(CPU不断查询外设接口数据准备情况或接收情况)、中断(外设发出请求CPU暂停保存现场后执行中断程序传送数据)占用CPU计算周期DMA方式是一种完全由硬件进行组信息传送的控制方式,具有中断方式的优点,即在数据准备阶段,CPU与外设并行工作。DMA由哪些部分组成?...

2021-08-08 21:26:41 615

原创 冲刺预推免刷题复习小记

四道pat甲级链表题1516. 共享标记一下地址就可以#include<bits/stdc++.h>using namespace std;const int N=1e5+10;int n,fir,sec,ne[N];char e[N];vector<int>a,b;int st[N];int main(){ cin>>fir>>sec>>n; for(int i=1;i<=n;i++){

2021-08-07 23:37:30 178

原创 AcWing 3194. 最大的矩形(单调栈变形)

题目链接简单说下思路哈:我们都知道单调栈可以求出左边第一个比自己小的数,那么其实这道题目我们只要线性复杂度求出最左边第一个比自己小的数和最右边比自己小的数就可以,比较麻烦的是最右边的,我们可以反转一遍数组,然后简单推导一下就可以求出等价最右边比自己小的数#include<bits/stdc++.h>using namespace std;const int N=1010;stack<int>s;int n,a[N],ans,l[N],r[N];int main

2021-07-02 01:06:53 150

原创 编译原理复习 预测分析法中出错处理

非递归预测分析在什么场合下发现错误1.栈顶的终结符和下一个输入符号不匹配栈顶是非终结符A,输入符号是a,而M[A , a]是空白– No allowable actions

2021-06-20 00:04:19 452

原创 数据库的事务机制基本知识

1、事务的基本要素(ACID)原子性(Atomicity):事务开始后所有操作,要么全部做完,要么全部不做,不可能停滞在中间环节。事务执行过程中出错,会回滚到事务开始前的状态,所有的操作就像没有发生一样。也就是说事务是一个不可分割的整体,就像化学中学过的原子,是物质构成的基本单位。一致性(Consistency):事务开始前和结束后,数据库的完整性约束没有被破坏 。比如A向B转账,不可能A扣了钱,B却没收到。隔离性(Isolation):同一时间,只允许一个事务请求同一数据,不同的事务之间彼此没有任何

2021-06-05 23:12:02 178

原创 AcWing 80. 骰子的点数 (背包、滚动数组优化)

考虑用动归,数组dp[i][j]表示用i个骰子扔出和为j的可能数,因为第i个骰子可能扔出1-6的点数,则dp[i][j]=dp[i-1][j-1]+dp[i-1][j-2]+dp[i-1][j-3]+dp[i-1][j-4]+dp[i-1][j-5]+dp[i-1][j-6],由于我们只需要用到最后一次的结果,因此为了节省空间可以使用滚动数组,将二维dp数组变为一维。class Solution {public: vector<int> numberOfDice(int n)..

2021-05-26 21:49:49 140

原创 AcWing 3549. 最长非递减子序列 (lis或者状态机)

这道题目最优解是1*2*1*2*类型,这样就有两种处理方式:一种是求1*2*的长度再加上1*2*的长度,枚举求最大值还有一种方式是四部分分成四个状态去求,也很好转移,下面代码给出的是第一种求法:#include<bits/stdc++.h>using namespace std;const int N=1e6+10;int n,a[N],pre[N],ne[N],f[2],ans;int main(){ cin>>n; for(int i=1..

2021-05-24 11:54:12 137

原创 集成学习boosting

Boosting 的核心思路是 — — 挑选精英。Boosting 和 bagging 最本质的差别在于他对基础模型不是一致对待的,而是经过不停的考验和筛选来挑选出「精英」,然后给精英更多的投票权,表现不好的基础模型则给较少的投票权,然后综合所有人的投票得到最终结果。大部分情况下,经过 boosting 得到的结果偏差(bias)更小。具体过程:通过加法模型将基础模型进行线性的组合。 每一轮训练都提升那些错误率小的基础模型权重,同时减小错误率高的模型权重。 在每一轮改变训练数据.

2021-05-23 23:08:10 149

原创 集成学习bagging

集成学习就是将现有的所有机器学习方法综合起来,进行组装bagging(bootstrap aggregating的缩写,也称作“套袋法”)就是其中的一种Bagging 的核心思路是 — — 民主。Bagging 的思路是所有基础模型都一致对待,每个基础模型手里都只有一票。然后使用民主投票的方式得到最终的结果。大部分情况下,经过 bagging 得到的结果方差(variance)更小。具体过程:从原始样本集中抽取训练集。每轮从原始样本集中使用Bootstraping的方法抽取.

2021-05-23 23:02:37 182

原创 AcWing 631. Googol字符串 (递归、思维题)

原题链接对于每个字符串,分为三个部分、前中后,中间由最独立的0组成,前面一直继承下来不变,后面记录一个反转对应的位置以及将本位上的值翻转的次数(0变1,1变0)#include <bits/stdc++.h>using namespace std;#define int long longint t,k,res;void dfs(int k,int p,int cnt){ if(k==(p+1)/2){ res=0; for(int

2021-05-23 15:43:10 152

原创 Acwing 152. 城市游戏(暴力枚举平面 单调栈)

#include<bits/stdc++.h>using namespace std;const int N=1010;int n,m;char s[N][N];int a[N],ans=-1,l[N],r[N];int get(int x){ for(int i=1;i<=m;i++){ int cnt=0,tep=x; while(tep>=1&&s[tep][i]=='F')cnt++,tep--;...

2021-05-13 20:52:34 255

原创 Fatal error: gnu/stubs-32.h: No such file or directory

64位linux提示gnu/stubs-32.h:No such file or directory的解决方法这个问题是由于缺少32位兼容包,解决办法:Ubuntu: sudo apt-get install libc6-dev-i386CentOS:yum -y install glibc-devel.i686

2021-05-13 15:27:57 2357

原创 AcWing 12. 背包问题求具体方案(背包求方案数经典模板,一定要会)

#include<bits/stdc++.h>using namespace std;const int N=1010;int n,m,f[N][N],v[N],w[N];int main(){ cin>>n>>m; for(int i=1;i<=n;i++){ cin>>v[i]>>w[i]; } for(int i=n;i>=1;i--){ for(int...

2021-05-11 23:48:23 118

原创 AcWing 11. 背包问题求方案数(背包问题求方案数)

#include<bits/stdc++.h>using namespace std;const int N=1010,mod=1e9+7;int f[N],cnt[N],n,m;signed main(){ cin>>n>>m; for(int i=0;i<=m;i++)cnt[i]=1; int u,v; for(int i=1;i<=n;i++){ cin>>u>&gt...

2021-05-11 22:48:48 116

原创 Leetcode 1723. 完成所有工作的最短时间 (dfs,剪枝)

class Solution {public: int ans=INT_MAX,sum[13]={0}; int minimumTimeRequired(vector<int>& jobs, int k) { dfs(0,k,sum,jobs,0,0); return ans; } void dfs(int u,int k,int sum[],vector<int>jobs,int tepans,int ...

2021-05-08 23:21:16 151

原创 Leetcode 618. 学生地理信息报告(分组行转列)

select min(case when continent='America' then name end) America, min(case when continent='Asia' then name end)Asia, min(case when continent='Europe' then name end)Europe from( select *,row_number() over(partition by continent or...

2021-05-05 10:08:45 128

原创 AcWing 756. 蛇形矩阵

模拟1、4个while循环,分别对应向右,向下,向左,向上走,走一趟为一个周期2、若在当前方向的下一个位置可以踩,则踩过去#include<bits/stdc++.h>using namespace std;const int N=110;int a[N][N];int n,m;int main(){ cin>>n>>m; int k=0,x=0,y=-1; while(k!=n*m){ while(y+1..

2021-05-01 11:47:39 74

原创 Leetcode 612. 平面上的最近距离

select round( pow(pow(p1.x-p2.x,2)+pow(p1.y-p2.y,2),1/2),2 ) shortest from point_2d p1 inner join point_2d p2 where p1.x<>p2.x or p1.y<>p2.y order by 1 asc limit 1

2021-04-28 16:57:11 152

原创 AcWing 166. 数独(dfs,位运算 剪枝集萃)

#include<bits/stdc++.h>using namespace std;const int N=100,M=9;char s[N];int ma[1<<M],ones[1<<M];int col[M],row[M],cell[3][3];int lb(int x){ return x& -x;}void init(){ for(int i=0;i<M;i++){ col[i]=row[i]=...

2021-04-27 17:13:12 100

原创 Leetcode 610. 判断三角形

select * , case when x+y>z and y+z>x and x+z>y then 'Yes' else 'No' end triangle from triangle

2021-04-27 17:11:57 111

原创 Leetcode 608. 树节点(case when)

select id, case when p_id is null then 'Root' when id in (select p_id from tree) then 'Inner' else 'Leaf' end typefrom tree

2021-04-26 23:00:43 99

原创 Leetcode 607. 销售员(经典嵌套子查询)

select name from salesperson s where sales_id not in ( select sales_id from orders where com_id=( select com_id from company c where name='RED' ) )

2021-04-25 16:24:54 87

原创 AcWing 196. 质数距离(二次筛法 区间筛质数)

思路:摘自小呆呆#include<bits/stdc++.h>using namespace std;#define int long longconst int N=5e6+10;bool st[N];int pr[N],cnt;void init(int x){ memset(st,0,sizeof st); for(int i=2;i<=x;i++){ if(!st[i]){ pr[cnt++]=i..

2021-04-25 15:54:42 124

原创 Leetcode 603. 连续空余座位

(求连续的几个序号都可以用lag和lead这种套路,新增列然后判断)select seat_id from (select * ,lag(free,1) over(order by seat_id) l1,head(free,1) order(order by seat_id) l2 from cinema) A where free=1 and (l1=1 or l2=1)...

2021-04-24 23:29:50 104

原创 第22次CCF计算机软件能力认证 第四题 校门外的树(dp)

思路:预处理出因数,然后dp#include<bits/stdc++.h>using namespace std;#define int long longconst int N=1010,M=1e5+10,mod=1e9+7;vector<int>v[M];bool st[M];int f[N],n,a[N];signed main(){ for(int i=1;i<M;i++){ for(int j=2*i;j<M;j..

2021-04-24 20:52:38 1549 5

原创 Leetcode 602. 好友申请 II :谁有最多的好友

本质上就是统计两列中相同数字的最大值,注意到limit 1表示取第一行limit x,y表示从第x+1行开始取y行select id1 id,count(*) num from( select requester_id id1,accepter_id id2 from request_accepted r1 union select accepter_id id1,requester_id id2 ..

2021-04-17 14:44:18 78

原创 Leetcode 601. 体育馆的人流量(lag 和head 函数)

select id,visit_date,people from( select *, lag(people,1) over(order by id)l1, lag(people,2)over(order by id) l2, lead(people,1) over(order by id)l3, lead(people,2) over(order by id)l4 from stadium ...

2021-04-17 14:21:53 165

原创 数据库的三级模式与二级映像

 数据库的模式(Schema)是对现实世界的抽象,是对数据库中全部数据的逻辑结构和特征的描述。模式反映的是数据的结果及其联系,数据库系统在其内部具有三级模式和二级映像。三级模式分别是外模式、模式和内模式,二级映像则是外模式/模式映像、模式/内模式映像。 三级模式  (1)模式  模式对应着概念级,它是由数据库设计者总和所有用户的数据,按照统一的观点构造的全局逻辑结构,是对数据库中全部数据的逻辑结构和特征的总体描述,是所有用户的公共数据视图。它是由数据库管理系统提供的数据模式描述语言(Da...

2021-04-17 00:01:21 5732

原创 Leetcode 597. 好友申请 I:总体通过率(round,计数)

select round( ifnull( 1/(count( distinct f1.sender_id,f1.send_to_id) /count(distinct r1.requester_id,r1.accepter_id)),0),2) accept_rate from friendrequest f1 , reques...

2021-04-16 22:52:25 138

原创 Leetcode 596. 超过5名学生的课(group by + having

select class from courses group by 1 having count(distinct student)>=5

2021-04-16 22:31:09 73

原创 Leetcode. 1294. 不同国家的天气类型(非常经典的order by +where限制分组查询)

select c.country_name, case when avg(w.weather_state)<=15 then "Cold" when avg(w.weather_state)<25 then "Warm" else "Hot" end weather_type from countries c inner join weather w on c.country_id =w.country_id .

2021-04-14 21:43:04 97

原创 Leetcode 595. 大的国家

select name,population,area from world where area>3000000 or population>25000000

2021-04-13 17:05:19 74

原创 Leetcode 586. 订单最多的客户

select customer_number from orders group by 1 order by count(*) desclimit 0,1

2021-04-13 17:03:04 90

Matlab教程(从新手到骨灰级玩家).pdf

MAT L A B能做什么 M AT L A B是一个可视化的计算程序,被广泛地使用于从个人计算机到超级计算机范围内 的各种计算机上。 M AT L A B包括命令控制、可编程,有上百个预先定义好的命令和函数。这些函数能通过 用户自定义函数进一步扩展。 M AT L A B有许多强有力的命令。例如, M AT L A B能够用一个单一的命令求解线性系统, 能完成大量的高级矩阵处理。 M AT L A B有强有力的二维、三维图形工具。 M AT L A B能与其他程序一起使用。例如, M AT L A B的图形功能,可以在一个 F O RT R A N 程序中完成可视化计算。 2 5个不同的M AT L A B工具箱可应用于特殊的应用领域。 M AT L A B在以下的领域里解决各种问题是一个十分有效的工具: • 工业研究与开发。 • 数学教学,特别是线性代数。所有基本概念都能涉及。 • 在数值分析和科学计算方面的教学与研究。能够详细地研究和比较各种算法。 • 在诸如电子学、控制理论和物理学等工程和科学学科方面的教学与研究。 • 在诸如经济学、化学和生物学等有计算问题的所有其他领域中的教学与研究。 • 在M AT L A B中创建的组是矩阵,M AT L A B的名字取自矩阵实验室( M ATrix LABoratory)。

2019-06-23

Python 函数.zip

python函数是在python学习中必不可少的一个重要环节

2019-06-23

PBDS 库.pdf

ext_pbds库中封装了很多高级数据结构如红黑树,AVL树,treap之类,加以利用可以大大节省代码量

2019-06-23

空空如也

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

TA关注的人

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