自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 使用pytorch进行迁移学习

说明:本篇文章整理Transfer Learning tutorial上的知识点;关于迁移学习,请移步:cs231n notes简要说明为何需要迁移学习: 在实际中,我们很少会训练一整个卷积神经网络(所有的参数从随机初始值开始训练),因为我们很难找到足够大的数据集。实际上,我们会用一个非常大的数据集(如ImageNet)来预训练一个卷积神经网络,然后使用这个神经网络来作为初始化

2018-02-01 16:42:53 939

原创 pytorch的一些例子

整理几个pytorch的简单例子,详见: Learning Pytorch with Examples.一、构造一个简单的两层神经网络,并使用随机生成的数据训练参数:import torchfrom torch.autograd import Variable# 构造一个两层的神经网络class TwoLayerNet(torch.nn.Module): def _

2018-01-31 17:56:29 2534

原创 faster-rcnn中的nms代码解读

最近在读faster-rcnn的代码,感觉理解透还是比较难的,需要将思路整理一下。下面将简单梳理一下nms部分的代码思路。代码如下:import numpy as npdef py_cpu_nms(dets, thresh): """Pure Python NMS baseline.""" # 所有图片的坐标信息,字典形式储存?? x1 = dets[:

2018-01-27 11:32:29 3659 2

原创 外链跳转

写一个爬虫,实现外链间的随机跳转。若某页面没有外链,则随机跳转到一个内链,然后继续收集外链。代码如下:from urllib.request import urlopenfrom urllib.parse import urlparsefrom bs4 import BeautifulSoupimport reimport datetimeimport random

2018-01-23 21:39:15 811

原创 收集整个网站的数据

创建一个爬虫从一个页面跳到另一个页面,来收集维基百科的页面标题、正文的第一个段落,以及编辑页面的连接。代码如下:from urllib.request import urlopenfrom bs4 import BeautifulSoupimport repages = set()def getLinks(pageurl): global pages

2018-01-23 16:36:43 393

原创 数据结构--线性部分总结

1、数组储存:行优先与列优先例题:2、熟悉一些特殊矩阵的存储:如上三角,下三角,对称矩阵等3、稀疏矩阵的存储:4、稀疏矩阵的转制注:将每项行列的值互换,然后进行重排使元素排列顺序仍然是行优先;别忘了将行数和列数的值交换5、稀疏矩阵的快速转置注:根据这个表,在a中知道某项的行、列坐标,就可以直接计算出在b中的对应位置6、

2018-01-11 22:47:28 598

原创

一、关于树的几个基本概念结点:一个数据元素及若干指向其子树的分支结点的度:结点所拥有的子树的个数称为该结点的度树的度:树中个结点的度的最大值称为该树的度叶子结点:度为0的结点称为叶子结点非叶子结点:度不为0的结点称为非叶子结点(分支结点)。根结点外的分支结点又称内部结点。孩子结点:一个结点的子树的根双亲结点\父结点兄弟结点:拥有同一父结点的所有结点层次:

2018-01-07 20:27:12 1020

原创 有关图的几个经典算法

一、最小生成树算法1、Kruskal算法· 利用最小堆和不相交集来实现· 最小堆中结点的格式·在构造最小生成树过程中,取最小堆的根结点,若该边两个顶点不属于同一个连通分量,则取该边,否则拿掉该根结点继续然后接着取最小堆的根结点进行判断。2、prim算法· 从连通网络N = {V,E }中的某一顶点u0出发,选择与它关联的具有最小权

2018-01-06 16:09:02 3316

原创 图的基础知识

一、图的基本概念· 有向图和无向图· 稀疏图:边数相对少的图    稠密图:边数相对较多的图· 完全图:任意两顶点间都有边相关联    完全有向图· 邻接顶点、子图、权      网路:带权图· 度、出度、入度、路径· 路径长度:非带权图的路径长度是指此路径上边的条数;带权图的路径长度是指路径上各边的权之和。    简

2018-01-06 15:12:34 283

原创 Sicily 1031. Campus

题解:即求多源最短路径问题,使用Floyd算法求解。参考思路:弗洛伊德算法一些细节:1、字符串处理方法:用一个string数组来存储所有地名,其结点编号为数组中相应下标 2、要考虑输入地名不存在和无解的情况代码如下:// Problem#: 1031// Submission#: 5233116// The source code is licensed under Creative Commo

2018-01-03 23:52:00 250

原创 Sicily 1090. Highways

· 最小生成树问题,求出最小生成树顺便记录其最长距离即可。可任选Kruskal、Prim算法中的一种,时间复杂都都一       样。我选择了Prim算法,认为它比较好实现一点。· 开一个二维数组存图,再开一个一维数组表示两个点集。代码如下:#include #include using namespace std;int map[501][501];int

2018-01-01 16:01:08 262

转载 Sicily 1154. Easy sort

随便选择一个排序算法,只要时间复杂度低于O(n^2)即可,我选择了快速排序。参考思路与代码:快速排序代码如下:// Problem#: 1154// Submission#: 5185561// The source code is licensed under Creative Commons Attribution-NonCommercial-ShareAlik

2017-12-31 22:09:06 162

原创 Sicily 1155. Can I Post the letter

解法一:直接用dfs暴力搜索就可以了。但是有一点需要注意:从起点开始搜会超时,但是从终点回搜就不会。咋一看有点难以理解:不都是dfs吗,为什么往回搜就不会超时?我个人的理解是:将起点看作是树的根,将终点看作是树的叶,从根到不同的叶有很多条路,而从叶回溯到根情况就相对来说少了很多,所以从终点搜就不会超时。下面是代码:#include #include using

2017-10-21 00:43:09 298

原创 Sicily 1443. Printer Queue

· 个人认为这题比较有意义,考察了如何用数组模拟一个队列,并执行相应操作。虽然想起来比较简单,但真正实现时有许多细节比较容易忽略,应多熟悉练习。· 此代码写得有点冗长,while(true) 后面的两大块其实是可以合并的。。。当时没考虑太多就写了。改天来简化一下。代码如下:#include using namespace std;int main(){ int

2017-10-18 20:04:59 251

原创 Sicily 1046. Plane Spotting

· 题目说了一大堆,其实就是让你按照所给的优先级规则,对满足输入的period(不小于min)进行一个从大到小的排序,然后输出前requested个(可能输出会不足)即可。· 方法是先写一个类period,将所有满足条件的周期收集起来,然后用algorithm中的sort函数进行排序即可,当然小于符号 '代码如下:#include #include using na

2017-10-18 19:34:22 217

原创 Sicily 1798. Alice and Bob

· 策略类问题,直接判断奇偶即可得出结果。· 证明:1、当n为偶数时,棋盘可以被n * n  / 2个 1*2骨牌覆盖,则Alice赢。使Alice走的第一个与起始点属于同一个骨牌,则接下来每当Bob走到一个新的骨牌上,Alice便走骨牌的另一个,即无论Bob怎么走,Alice都一定有路可走,最终Bob会将自己走死。 2、当n为基数时,n * n为基数,则除去起始点,剩下的格子可以被 (n *

2017-10-10 21:31:54 334

原创 Sicily 1444. Prime Path

分析: 简单的BFS。一次只能变一个位,最短路径,自然就想到了BFS。首先进行预处理:构建一个1000到9999的素数表,然后构建一个无向图(比较推荐使用vector的形式)。对于每次输入,使用BFS即可。此题文字描述较长,且需要一些预处理,所以看上去“有点难”,但只要仔细分析,不难求解。代码如下:#include #include #include #include

2017-10-07 17:14:24 214

原创 Sicily.1039 Phone Home

•  深度搜索。•  思路很明确:通过给出的数据构建出如题所示的图,然后以一个结点为种子进行深搜。•  我使用一个二维数组(mark)来表示这个图,使用一个一维数组(num)来记录每个结点对应的值;以点对的形式输入,在这里我构建了一个类Pair,当然也可以尝试使用map;DFS的过程:先初始化第0个结点(第一组输入的数据就是第0个结点),num[0] = 1,cnt = 1(编号数);

2017-09-27 20:18:50 318

转载 Sicily.1280 Permutation

思路参考: http://blog.csdn.net/rappy/article/details/1797699代码如下:#include #include using namespace std;const int N = 100;long long cnt [N] [N];int seq [N];int n;void findall(){ for (int

2017-09-20 21:57:26 231

原创 Sicily.1114 Food Cubes

三维空间上的BFS。(不是自己想出来的,思路是讨论区@TLE from SMIE 同学的。)需要注意的地方:1.hole不一定是一个点,注意到关键词:continuous ,它可以是任意形状的,只要六个方向都被围住即可。 2.一定要考虑到边界,即"hole"若有一部分是边界,那它便不是hole。代码如下:#include #include using namespace

2017-09-17 16:33:34 340

原创 Sicily.1021 Couples

栈的简单应用。为什么用栈:从环的任意一点断开(形成栈),消去结果和环是一样的。注意:1、用mark将一对夫妻关联起来,用一维数组即可,比二维节省了许多空间。2、mark的长度是200001而不是100001因为n是夫妻对数。 3、每次循环并不需要将mark清零,因为数据会覆盖。代码如下:#include #include using namespace std;int

2017-09-16 21:42:27 275

原创 Sicily.1293 3n+1数链问题

len函数计算特定值的数链长。循环比较找到最大值即可。代码如下:#include using namespace std;int len(int k){ int len = 1; if (k == 1) return len; while(k != 1) { if (k % 2) k = 3 * k + 1; else k = k / 2; len ++

2017-09-15 21:28:32 215

原创 Sicily.1001

简单的动态规划。基点是将最后一位 store[len-1] 初始化为1,store[len] = 1 是为 ss[len - 2] 服务的。注意考虑一下特殊情况:字符串中间出现0的时候,只能与前一位搭配。代码如下:#include #include using namespace std;void dfs(int pos,int len,string& ss,int* stor

2017-09-13 19:38:12 281

空空如也

空空如也

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

TA关注的人

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