自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 提高效率的小技巧 [Linux]

希望一直为之努力的都能有个令人满意的结果~ ????今天学到的两点小技巧,可以提高效率,知识点比较零散。服务器离线安装第三方库(Anaconda)使用proxychains失败,于是百度到一种服务器离线安装库的方法在这一网站查找第三方库的名字,找到对应版本,下载.whl文件或.tar.gz文件。下载好后,对于.whl文件,直接运行pip install xxx.whl即可;对于.tar.gz文件,首先解压该文件gzip -d xxxx.tar.gz, tar -xvf xxxx.tar),然后

2021-10-05 01:25:52 234 1

原创 Pytorch 打印网络中特定一层的参数

1.打印网络中指定的一层的参数:print(net.state_dict()['module.conv1.1.bias']) # 填该层参数名如果不知道要打印的这一层的名称(key),可以通过以下方式获得:for name in net.state_dict(): print(name)就会打印出网络每一层的名称2.打印整个网络每一层的名称和参数值:for name, parameters in net.named_parameters(): print(name, ':', par

2021-01-07 20:29:43 3755

原创 CIFAR100数据集介绍及使用方法

CIFAR10、CIFAR100数据集的官网链接:http://www.cs.toronto.edu/~kriz/cifar.html一、CIFAR100概述CIFAR100数据集有100个类。每个类有600张大小为32×3232\times 3232×32的彩色图像,其中500张作为训练集,100张作为测试集。对于每一张图像,它有fine_labels和coarse_labels两个标签,分别代表图像的细粒度和粗粒度标签,对应下图中的classes和superclass。也就是说,CIFAR100.

2020-11-02 00:48:29 70189 6

原创 Linux服务器安装Anaconda、jupyter lab及Pytorch环境

一、安装Anaconda因为之前在服务器A上配置过环境,现在想要在新的服务器上配置环境。可以直接将Anaconda的压缩包从服务器A传到服务器B上:在服务器A上输入scp命令:$ scp Anaconda3-2020.02-Linux-x86_64.sh servername@yourIPaddress:/targerfolder(拷贝整个文件夹:scp -r floder username@ip:filepath)拷贝完成后,输入bash 安装包名称安装,一路enter。上一步完成后添加环境

2020-10-24 18:54:44 900 1

原创 HDU 贪心专题

☀️下面整理了几道使用贪心算法的题目,从简到难。????一、HDU 4310 Hero题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4310题意为,每个Hero有DPS和HP两个属性,每个时刻都受到HP>0的敌人的攻击,而自己每个时刻只能攻击一个敌人,使其HP减一。问自己打败所有敌人消耗最小的HP量。贪心策略:需要首先消灭HP小且DPS大的敌人,因此我们按Hero的 DPS/HP 值从大到小排序,依次消灭。AC代码:#include <

2020-09-17 21:48:42 432

原创 HDU 动态规划专题复习

关于背包问题详见这篇blog,本文没有回顾背包问题。下面是动态规划的一些经典的问题。一、最大连续子序列和题目为从数组a[0] a[2]…a[n-1]中找出i, j,使得a[i]~a[j]这一段元素之和最大。状态转移方程为:dp[i]=max{dp[i−1]+a[i],a[i]}dp[i] = max \{dp[i-1] + a[i], a[i]\}dp[i]=max{dp[i−1]+a[i],a[i]},边界为 dp[0]=a[0]dp[0] = a[0]dp[0]=a[0]。代码由此可以很容易的写

2020-09-10 22:06:37 202

原创 HDU 递推专题

以下题目可使用递推算法求解。一、HDU 2802 F(N)题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2802AC代码:#include <stdio.h>#include <algorithm>using namespace std;//HDU Accepted 2802 15MS 1256K 332 B G++//学会找找循环解 __int64 f[110000];void init() { int i;

2020-09-07 15:10:36 204

原创 记忆化搜索

记忆化搜索与搜索不同之处在于,它把重叠的子问题的答案保存下来,相当于以空间换时间。下面两题是使用了记忆化搜索算法的题目。一、HDU 1078 FatMouse and Cheese题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1078AC代码,具体见注释:#include <iostream>#include <cstring>using namespace std;int m[105][105];int dx[4]

2020-09-06 19:52:09 107

原创 HDU 二分图专题

今天学习了下二分图匹配,思路就是,先匹配着,不行就让之前的人想办法挪位置,挪不了了就结束。(今晚只做了一题,明天再做其他的再更新一、HDU 2063 过山车题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2063代码如下,具体见注释:#include <iostream>#include <string.h>using namespace std;//HDU Accepted 2063 15MS 2404K 729B G+

2020-09-05 23:50:19 212

原创 洛谷 二分查找专题

叮!二分专题~~下面几个题都是二分法去做,可用以参考或开阔思路。一、P1918 保龄球题目链接:https://www.luogu.com.cn/problem/P1918题目描述:给出每个位置的瓶子数,输出一个发球位置,使得这个位置的瓶子个数刚好是需要的个数。思路:一眼可以看出来的二分,为了保存位置这一信息,加上个结构体就可以了。先排序,然后二分查找。需要注意的点:while循环的停止条件、出口、查找一次后的处理AC代码:#include <iostream>#include

2020-09-05 21:08:37 549

原创 数据结构——排序算法总结

一、插入排序插入排序是算法是每次将1个待排序的记录按其关键字大小,插入到前面己排好序的子序列中,直到全部记录插入完成。直接插入排序空间复杂度:仅使用了常数个辅助单元,O(1)O(1)O(1)时间复杂度:最好情况下为O(n)O(n)O(n),最坏情况为O(n2)O(n^2)O(n2)稳定性:稳定折半插入排序即先折半查找出元素的待插入位置,然后统一移动待插入位置之后的所有元素 。折半插入排序减少了比较元素的次数,这部分的复杂度为O(nlog2n)O(nlog_2n)O(nlog2​n),而元素的

2020-09-03 16:40:46 158

原创 HDU 鸽巢原理

鸽巢原理把多于n+1个的物体放到n个抽屉里,则至少有一个抽屉里的东西不少于两件。把多于m*n+1(n!=0)个的物体放到n个抽屉里,则至少有一个抽屉里有不少于(m+1)的物体。把无数还多件物体放入n个抽屉,则至少有一个抽屉里有无数个物体。一、HDU 1205 吃糖果题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1205思路是,把数量最大的这一种类放在一堆,数量记为maxa,其他种类的糖果放在一堆,数量为sum-maxa。如果maxa &gt.

2020-09-02 21:08:45 198

原创 HDU 1200 字符串

不断补充:1.strlen()用法strlen()用于返回字符数组或字符串所占的字节数。该函数是从该字符串的第一个地址开始遍历,直到遇到结束符’\0’为止。返回的长度大小不包括’\0’。c/c++ strlen(str)和str.length()和str.size()都可以求字符串长度。2.reverse()用法reverse可以用于vector、string类型的变量,使用方法:string s;reverse(s.begin(),s.end()); //s已经是反转后的结果对于字符数

2020-08-30 16:46:19 157

原创 HDU 一道BFS两道DFS总结

昨天做了三道搜索题目,每个题目都各有特点,下面总结一下几个题。一、HDU 1728 逃离迷宫 BFS题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1728这个题目是对转弯数做了限制,要求最小转弯数,因此使用BFS。我们用shortnum[MAXN][MAXN]数组表示到当前位置的最小转弯数。定义结构体node包含坐标、转弯数、走的方位。AC代码:#include <iostream>#include <string.h>#

2020-08-28 22:51:34 224

原创 HDU 1429 BFS+状态压缩

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1429题目大意:魔王每t分钟回地牢视察一次,若发现Ignatius不在原位置便把他拎回去。只要在魔王下次视察之前走到出口就算离开地牢,如果魔王回来的时候刚好走到出口或还未到出口都算逃亡失败。分析:题目中明确说明有a~j共10把钥匙,迷宫大小为n*m,我们可以设置一个三维数组status[MAXN][MAXN][1030]表示出各种状态,其中第前两维用来表示地图中的每个点,第三维表示获得钥匙的状态。数组值

2020-08-28 22:24:59 90

原创 HDU 欧拉回路、欧拉路径

四个重要定理无向图存在欧拉通路的条件:连通且只有两个顶点的度是奇数,其余都是偶数,或者无度为奇数的结点无向图存在欧拉回路的条件:连通且所有节点的度为偶数有向图存在欧拉通路的条件:连通且所有顶点的出度与入度都相等,或者除两个顶点外,其余顶点的出度与入度都相等,而这两个顶点中一个顶点的出度比入度之大1,另一个顶点的出度比入度小1。有向图存在欧拉回路的条件:连通且所有的顶点出度等于入度记住以上几个定理就好办了,下面是两个例题:一、无向图的欧拉回路题目链接:HDU 1878 欧拉回路根据如上定理

2020-08-25 23:07:04 156

原创 HDU 1873 优先队列

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1873实现方式就是每个医生一个优先队列,IN进队,OUT出队。AC代码:#include <iostream>#include <queue>using namespace std;//2020-08-24 10:55:45 Accepted 1873 156MS 1432K 1202 B G++struct node{ int id; int rank; node(

2020-08-24 11:02:26 262

原创 ACM 前缀和

前缀和是一种重要的预处理,能大大降低查询的时间复杂度。我们可以简单理解为“数列的前 n 项的和”。下面是两道简单的前缀和题目一、一维前缀和题目链接:洛谷 P3406 海底高铁就像公路上限速标志一样,只会在一个路段开始和结束两个地点声明限速和解除限速,而不必在全程每一根柱子上都标明限速70。那么这个题使用前缀和后也是一样,不必在每条路上都标记走了多少次,而只需要在开始和结束出做加一和减一标记处理。这样我们就知道接下来经过的这条路是被经过了多少次,而到了减一的城市之后,接下来经过的路段就与之前的路.

2020-08-18 22:45:55 252

原创 动态规划——背包专题

背包问题是一类典型的动态规划问题,背包问题又分为:0-1背包、完全背包、多重背包这三类。本文将介绍这三种背包问题以及acm题目代码。其中多重背包部分有很多类型的变式,因此给出的题目较多。一、0-1背包0-1背包问题通常为:给定n个物品、每个物品的体积为w[i],价值为c[i]。(每个物品只有一件)背包的容量为V,问如何选取物品使得不超过背包的容量且所装总价值最大。一般的状态转移方程可以写为:dp[i][j]=max{dp[i−1][j]不放第i件物品dp[i−1][j−w[i]]+c[i]放第i件物

2020-08-17 21:48:44 152

原创 HDU 1242 /4460/1226/4474 BFS专题

广度优先搜索(BFS)是最简便的图的搜索算法之一。BFS属于一种盲目搜寻法,目的是系统地展开并检查图中的所有节点,以找寻结果。换句话说,它并不考虑结果的可能位置,彻底地搜索整张图,直到找到结果为止。今天做了几道关于BFS的题,由简到难,记录一下。1. HDU 1242 Rescue题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1242题目大意:Angel被抓了,地牢大小N * M,格子有四种类型:墙、路、守卫和营救Angel的朋友。每走一格需要1个.

2020-08-13 21:27:57 141

原创 ACM 树

一、二叉树节点的表示通常使用结构体表示。struct Node{ Node * lchild; //左子节点 Node * rchild; //右子节点 int c; //编号}Tree[1005];二叉树的三种遍历方式前序、中序、后序的遍历方式如下所示。void preOrder(Node *T) { //后序遍历 if(T->lchild != NULL) postOrder(T->lchild); if(T->rchild != NULL)

2020-08-12 21:16:55 190

原创 ACM 数论(一些定理及应用)

常用定理1. 欧拉定理(费马-欧拉定理)若n,an, an,a为正整数且n,an, an,a互素,则有如下公式: aφ(n)≡1a^{\varphi(n)} \equiv 1aφ(n)≡1 (mod n)含义: aφ(n)a^{\varphi(n)}aφ(n)与1在模n下 同余,其中φ(n)\varphi(n)φ(n)为欧拉函数,代表小于或等于nnn的正整数中与nnn互质的数的数目。举个栗子:a=3,n=5a=3, n=5a=3,n=5,小于5的正整数中与5互质的数为1,2,3,4,所以φ(5)

2020-08-11 10:29:47 318 1

原创 HDU 1285/2647/1811 拓扑排序

今天学习了拓扑排序算法,做了三道相关题目。一、1285 确定比赛名次一道纯拓扑排序,很简单,代码中有注释。#include <iostream>#include <vector>#include <queue>#include <stdio.h>#include <string.h>using namespace std;//HDU Accepted 1285 15MS 1440K 1051 B G++int n, m, a,

2020-08-09 22:42:51 112

原创 HDU 2112 使用优先队列优化Dijkstra算法

题目链接http://acm.hdu.edu.cn/showproblem.php?pid=2112使用优先队列优化的Dijkstra算法,其时间复杂度为O(ElogV)O(ElogV)O(ElogV)。无论是稀疏图还是稠密图,优化后的运行速度都要比朴素Dijkstra快。下面是几点需要了解的:在Dijkstra算法中,dis[i]越小应该越先出队。在STL中我们可以使用greater<int>表示大于运算符,写成priority_queue<int> , vector&lt

2020-08-09 13:14:33 312

原创 HDU 2544 最短路

题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=2544求工作人员从商店走到赛场的最短时间,也就是最短路问题。最短路问题的常用算法为Floyd算法、Dijkstra算法。下面依次介绍两种方法并给出代码。一、Floyd算法Floyd算法,中文叫做弗洛伊德算法,是解决任意两点间的最短路径的一种算法。可以处理有向图或负权图(但不可存在负权回路)。这种算法的时间复杂度是O(N3)O(N^3)O(N3),空间复杂度为O(N2)O(N^2)O(N2)。算法的原理与动

2020-08-08 21:25:35 175

原创 HDU 1301 初学最小生成树

题目链接http://acm.hdu.edu.cn/showproblem.php?pid=1301这是一道求最小生成树,可以分别使用Prim和Kruskal两种算法实现一、Prim算法朴素Prim的算法复杂度为O(n2)O(n^2)O(n2),更适合于稠密图对于Prim算法,还有一种优化方法叫堆优化,但是据说使用后提升不大,所以我暂时还没有学Prim堆优化这个方法。朴素Prim代码如下,详细步骤见注释#include <iostream>#include <string.h

2020-08-08 09:25:39 118

原创 pytorch KL散度学习

pytorch官方文档中给出了说明下面是在学习过程中需要注意的:KL散度计算公式KL(p∣∣q)=∑P(x)log(P(X)Q(x))KL(p||q) =\sum{P(x)log(\frac{P(X)}{Q(x)})}KL(p∣∣q)=∑P(x)log(Q(x)P(X)​)其中P(x)P(x)P(x)是真实的分布,是目标;Q(x)Q(x)Q(x)是拟合分布,是想要改变的分布。KL散度值越小,分布越接近。性质KL散度值 ≥\geq≥ 0,当P(x)=Q(x)P(x) = Q(x)P(

2020-07-21 16:45:36 10183 6

原创 Pytorch中报过的错及解决方法(持续更新中)

1.输出的维度和数据集的label大小不一致RuntimeError: Assertion `cur_target >= 0 && cur_target < n_classes' failed. at C:\w\1\s\tmp_conda_3.7_055457\conda\conda-bld\pytorch_1565416617654\work\aten\src\THNN/generic/ClassNLLCriterion.c:94检查最后输出的维度需要与类的数量是否相匹

2020-06-24 21:53:34 4194 3

原创 AutoEncoder学习记录

1.基本结构AutoEncoder 属于神经网络范畴,AutoEncoder 重点关注的是 Hidden Layer,而它通常只有一层 Hidden Layer。AutoEncoder包含encoder与decoder两部分:通过encoder将输入x映射到特征空间z,再通过decoder将抽象表示z映射回原始空间,通常记作x’,是对样本的重构。对于基于神经网络的AutoEncoder模型...

2020-05-07 20:58:54 628

原创 QT实现界面颜色设定

在cpp文件中加入以下代码:MainWindow w;QPalette palette;palette.setColor(QPalette::Background,Qt::white); //背景色设置成白色w.setPalette(palette);头文件#include <QPalette>...

2019-09-05 18:39:47 4099

原创 DP例题1

DP Problem 1: Balanced PartitionYou have a set, A = {​a1,⋅⋅⋅,an​a_1, · · · , a_n​a1​,⋅⋅⋅,an​​}, of n integers each in the range [0…K]. Partition these integers into two subsets such that you minim...

2019-08-31 13:01:05 203

空空如也

空空如也

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

TA关注的人

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