自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 《磨菇书三四章整理》

《easyRL 蘑菇书三四章》

2022-07-19 22:53:56 132 1

原创 强化学习《蘑菇书 EasyRL第一章 概览》

强化学习 蘑菇书 EasyRL第一章 概览

2022-07-12 08:32:23 478

原创 面试题:多线程快排和冒泡(python)

多线程快排#%%import threadingimport numpy as np#%%def partrition(l,r,A:list): pivot=A[l] while l<r: while l<r and A[r]>=pivot:r-=1 A[l]=A[r] while l<r and A[l]<=pivot :l+=1 A[r]=A[l] A[l]=pivot

2022-03-24 00:23:16 1198

原创 决策树-C4.5例题

2022-01-16 00:22:22 1193

原创 遗传算法笔记

二进制编码精度,个人认为是一种定义域范围内的映射。

2022-01-13 22:57:05 94

原创 朴素贝叶斯算法

缺点:主观贝叶斯(理解):H理解为实验结果,E理解为为得到实验结果而采取或关注的措施。则LS关注的是采取相同措施得到不同结果的概率,LN关注的是未采取措施得到不同结果的概率。...

2022-01-10 00:11:18 405 1

原创 Kelips论文空间复杂度计算总结

2021-11-11 22:59:02 449

原创 一致性哈希算法之Pastry协议总结

参考:[1]于忠涛,刘兴伟.Pastry网络模型的路由机制及改进[J].西华大学学报(自然科学版),2006(01):27-30+2.(这篇论文基本上是原著英文版的中文精简版了)

2021-11-10 22:20:18 502

原创 UIUC云计算概念(chord)

2021-11-08 00:01:21 135

原创 UIUC 云计算概念:SWIM协议笔记

2021-10-10 23:45:37 169

原创 UIUC云计算概念——Gossip analysis一章中涉及的公式知识点整理

2021-10-01 14:24:14 129

原创 2021-03-10

#goroutine学习笔记个人将《go程序设计》p182中的例程做了些许修改。整个过程中有以下几个问题-将缓冲通道改成无缓冲通道后的goroutine泄露问题```govarresponse=make(chanstring,3)funcrequest(urlstring)string{switchurl{case"europe.gopl.io":time.Sleep(5*time.Second)...

2021-03-10 13:24:58 85

原创 tcp-socket小结

服务器:1.socket()函数建立socke套接字2.bind()用来绑定对应的协议族,tcp\udp,不填端口的话是默认端口,不填ip地址则从最常用的出口ip地址中取一个3.listen():使内核接收指定套接字的信息,并有一个 未完成队列 和一个 已完成队列4.accpet(),从未完成队列的队头中取一个节点进行处理。...

2021-02-13 18:40:27 78

原创 协程的理解(labuladong)

第一次接触协程是在学习golang后听说的。后来接触python编程,只知道用yield 和next来调度协程。直到看到东哥的推文才醍醐灌顶,写下博客记录一下。https://mp.weixin.qq.com/s/2cCDunXG2oJ9gWE4lVGcCQ大致就是,协程之所以称为“用户线程”,在于其中断机制可以由用户来进行调度。与线程不同,协程是由程序员逻辑控制的,这使得进行并发编程时协程的调度是可见的,从而可以减少bug的出现,且一个线程可以调度多个协程,从而大大地增加了程序的并发量。但是协程也有缺

2021-02-12 17:21:03 253

原创 静态类不可重入锁,异常释放锁

静态类通过不可重入锁,触发异常从而释放锁,以数数c#代码为例:当第二个线程进入该函数,调用EnterWriterLock函数时,尝试加上不可重入锁时,如果该函数内有线程在执行,将抛出异常,从而强制上一线程释放锁。...

2021-02-08 16:49:45 214

原创 《GO语言程序设计》第七章(http.Handler接口)读后感

1.golang函数值适配器

2021-02-07 20:53:43 84

原创 零基础入门推荐系统【数据分析】Task2(学习心得)

零基础入门推荐系统【数据分析】Task2(学习心得)链接:https://tianchi.aliyun.com/notebook-ai/detail?spm=5176.12586969.1002.3.41052b3aXVmMWE&postId=144451个人觉得不进行数据分析,特征分析的机器学习都是纸上谈兵,故写一下学习心得,总的来说整个流程分为以下三点:1.观其大略。先是对整个数据集的总览(常用技巧:排序、扩列),查看数据集的规模,对数据集进行表连接从而可以更容易发现分散的数据之间的

2021-01-31 23:05:40 186

原创 2020-11-26

vscode(opencv4-windows)环境搭建好久没有更新过博文了,版运行一下一篇博文:https://zhizunjiege.github.io/posts/843d387b/?t=1606352853253

2020-11-26 09:29:54 93

原创 字符串比较

#include<bits/stdc++.h>using namespace std;int com(char *A,char *B){ if(A==B) return strlen(B); int *a,*b; char *a1,*b1; a=(int*) A, b= (int*) B; while(*a++==*b++);///I...

2019-07-14 19:07:39 178

转载 二分查找总结

不同情形下的二分查找策略:https://segmentfault.com/a/1190000016825704

2019-03-24 14:59:06 244

原创 八数码 IDA* A *比较总结 HDU1043 POJ1077

这是一个经典的搜索题,做法很多可以详见此题的八境界做法,这里只阐述A*与IDA*算法。 A*算法: 简单来说是带估值函数的广搜。不同之处在于:对每个放入队列(open table)的节点计算估值函数h(x),然后进行排序。这样出队时的顺序就不是自然顺序,而是有导向性的一个顺序,这样可以比直接搜索能更快的到达目标节点。 缺点:A*算法与bfs一样,都是搜索当前节点下...

2019-03-17 23:41:33 352

原创 leetcode128 最长连续序列

此题难就难在数组为排序且时间复杂度在o(n)注意此题目中如果数列[2,2,3]这样的数组,连续的数为[2,3]思路:1、如果给我们一个数组 我们可能会这样做:先取第一个元素,假如是k。 然后查找数组是否有k-1和k+1这两个数,然后递归查找。查找完后把当前数以及找到的其他连续的数删除。重复下去,可知每个数最多遍历一次,所以时间复杂度为o(n),判断数组众是否存在某个数可借助hash_m...

2019-02-17 17:20:02 232

原创 和至少为 K 的最短子数组(双端队列实现单调栈)leetcode862

思路::1、首先求数列的前缀和 S[n]  则任意一段的子序列和S[a,b]=s[b]-s[a-1]  2、用双端队列维护这样一个单调栈   假设i&lt;j&lt;k, 且s[i]&gt;s[j] 则 a. if s[k]-s[i]&gt;=K →s[k]-s[j]&gt;=k,因此此时的s[i]可以被丢弃   b.有贪心思想可知 这个序列不可能以负数或0开头或者结尾 所以如果存在s...

2019-02-17 16:50:10 448

原创 北大算法考题(思维)

#include&lt;bits/stdc++.h&gt;using namespace std;int n;int findKnown(bool relation[][10]){ //relation代表了n个人的关系,为一个NxN的方阵 //relation[i][j] 代表从i到j是否有边,有边为true,无边为false int i; //第一阶段 int...

2019-01-07 20:06:36 765

原创 scrapy爬去知乎用户+代理池实现

spider:# -*- coding: utf-8 -*-import jsonfrom scrapy import Spider, Requestfrom zhihuuser.items import UserItem# https://www.cnblogs.com/lei0213/p/7904994.htmlclass ZhihuSpider(Spider): ...

2018-10-22 17:08:11 599

原创 hdu4281 状态压缩dp(mtsp)+树状数组

#include&lt;bits/stdc++.h&gt;#define inf 0x3f3f3f3fusing namespace std;const int maxn=17;/*这里参考大佬的代码,去掉初始位进行二进制枚举*/int n,m,maxs,lim,cnt;int x[maxn],y[maxn],c[maxn];int dp[1&lt;&lt;maxn];///某状态...

2018-10-10 22:31:35 350

原创 求给定区间外有多少个不同的数(区间倍增+主席树)

思路:求区间不同个数自然很容易想到主席树/莫队,但是这里是区间外,怎么处理呢?求区间内不同的个数给定的是连续的范围,而区间外的则是一个断开的,所以应该要想到把两个区间拼接在一起。怎么拼接呢,令a[i+n]=a[i],即多保存一份副本在区间外,这样恰当,当求区间(1,L)和区间(R,,n)时实际上转化成求区间 (R,L+n),这样就把断开的区间变成连续的区间,用主席树或莫队解决。#include...

2018-07-23 21:37:13 464

原创 骑士周游 贪心优化

思路:在原本直接回溯版本的基础上,走下一步的时候考虑下一步的下一步可行解的数量,按可行解的数量从小到大的顺序选择下一步。优化出来的效率高很多,再次感受到算法的魅力。/*输入n*n的棋盘,输出从给定位置出发的马踏棋盘的路径*/#include#define inf 0x3f3f3f3f#define debug cout<<"debug___________"<<endlusing na

2018-05-10 13:56:07 862

原创 负值01背包

题意:n头牛,每头牛有一个幽默值和聪明值(有负数),问如何从中选择k头牛,使得幽默值和聪明值的和非负且最大。思路:把问题看成01背包,背包的总容量为幽默值的和,每一头牛的幽默值和聪明值分别看成是物品的价值和体积。因为幽默值有可能为负数,不能做数组的下标,所以要先移位。#include#include#include #include#define inf 0x3f3f3f3fus

2018-04-15 16:31:02 1757

原创 hdu1495 隐式图bfs

题意:中文思路:这道题思路还是比较明显的,不过有几个地方可以剪枝,降低复杂度。初始状态(s,0,0)目标状态(1/2s,1/2s,0)。每次操作其实无非(s-&gt;a,s-&gt;b,a-&gt;b,a-&gt;s,b-&gt;s,b-&gt;a) 虽然如此,自己做的时候还是卡在了自己捉急的编程技巧上。下面附上自己tle的代码和别人的ac代码。tle:#include&lt;cstdio&gt;...

2018-03-29 13:35:38 176

原创 poj2917 构造+因子个数

链接:https://www.nowcoder.com/acm/contest/90/F来源:牛客网#include#include#include#include#define MAX 40005int prime[MAX];int vis[MAX];int idx;int cal(int n){ int ret=1; int syz[MAX];

2018-03-24 20:52:39 280

原创 逆向思维题

链接:https://www.nowcoder.com/acm/contest/90/J来源:牛客网题目描述牛客网是IT求职神器,提供海量C++、JAVA、前端等职业笔试题库,在线进行百度阿里腾讯网易等互联网名企笔试面试模拟考试练习,和牛人一起讨论经典试题,全面提升你的编程。作为acmer的小A,牛客网是他首选的题库。小A是一个中度强迫症患者,每次做数组有关的题目都

2018-03-24 19:49:48 1555

原创 hysbz1296 三维dp+01背包

题意:中文思路:定义dp[i][j][w]为第i个位置涂w颜色,并且往左涂j次后的最大正确颜色。则dp[i][j][w]=max(dp[i-1][j][w],dp[i-1][j-1])+1,dp[i][j][!w]=max(dp[i-1][j-1][w],dp[i-1][j][!w]).(这里注意因为相连两个如果涂同样的颜色,只需涂一次。然后再背包一下就好了。不过背包要注意的是,因为每次进行的

2018-03-22 16:30:56 308

原创 goj 1462 思维+并查集

思路:首先,如果按照正着走某一条桥拆了的话,其对应着的是反着走某一条桥被新建了。所以可以把题目想象成一开始都没有桥连通。先把每条桥能使用的时间从大到小排序(因为最后拆的桥对应逆向思维的第一条建的桥),然后用并查集判断一下接下来要建桥的两个点是否已经连通。若之前没有连通,建桥后连通,说明这是关键的一条桥,学生会起义。#include #include #include #include

2018-03-20 17:30:10 210

原创 goj1461 思维

思路:首先计算出任意一个位置的'1'最长可以向左延伸的距离。然后遍历每一列,按延伸值从小到大排序一次,则下面的始终可以覆盖上面。从最下面开始往上走求最大的面积。/*记录每个点能够向左延展的距离,定义状态dp[j][i]代表第j列的第i行的元素向左延展的最远距离,(之所以把列写在前面是为了后面的排序)然后我们对这个距离排序,从大到小,每个上面的都可以被下面的拓展,那么枚举每个右下角,取最大

2018-03-20 17:23:37 206

原创 goj 1460 dag的最小路径覆盖

思路:直接把每一个相邻的植物都用边连起来,然后求一次最小路径覆盖就可以了。注意:匈牙利算法返回1代表找到一条增广路,对应一个匹配。最小路径覆盖=最大独立集=节点数-最大匹配数。#include#include#include#includeusing namespace std;const int maxn=100;char s[maxn][maxn];int h,w,

2018-03-20 17:18:33 240

原创 hdu2376 最小区间覆盖(水题)

题意:vj上有中文版思路:见代码;注意剪枝就行了这题。#include#include#include#includeusing namespace std;const int maxn=1e6+50;int t,n,st,ed,cnt,maxr;struct COW{ int l,r;}c[maxn];bool cmp(COW a,COW b){ if(a.

2018-03-18 00:49:41 455

原创 hihocoder1705 用set排序

题目:中文思路上这题不难想到:首先从左边扫一遍位置,记录每个空位置左边连续的空位置,然后再从右扫一遍,记录每个空位置右边的连续空位置.(注意把这些空位置放入set中去).然后把set内的首元素拿出来就是满足条件的一个座位。然后把这个座位标记为坐上,在set中删掉,更新以这个位置为分界的左边的椅子和右边的椅子,重复操作。比较难想到的是用set自带的排序来做,开始我用优先队列来做,发现删除

2018-03-18 00:45:08 215

原创 hdu5969 动态规划(递推)

题意:中文思路:定义dp【i】为第i列埋的地雷数,num[i]为第i个格子上面标着的数字。所以有dp[i]=num[i-1]-dp[i-2]-dp[i-1](当有三个连续的列时) dp[i]=num[i-1]-dp[i-1],当此时为第一列。定义好了以后,还有一个关键的地方在于:如果一列的地雷数为0或2,则这一列只有一种方法,如果有一个地雷则有两种放法。#include#includ

2018-03-15 23:07:47 175

原创 hdu3068 manacher算法

题意:中文。Manacher算法的解释参照:http://blog.csdn.net/dyx404514/article/details/42061017代码:void init(){///预处理字符串,aaa---#a#a#a# length=strlen(s); memset(temp,0,sizeof(temp)); temp[0]='@';///防止数组越界 int k

2018-03-14 11:11:58 169

空空如也

空空如也

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

TA关注的人

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