自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Abraham畅游码农世界

正在发育中...........

  • 博客(53)
  • 资源 (1)
  • 收藏
  • 关注

转载 SpringBoot注解整理

项目用到的注解作用:bean的分类标识 @Service: 注解在类上,表示这是一个业务层bean @Controller:注解在类上,表示这是一个控制层bean @Repository: 注解在类上,表示这是一个数据访问层bean @Component: 注解在类上,表示通用beanbean注入: @Autowired:按类型装配 @Resource: 按名称装配@Con...

2018-07-24 11:27:47 250

转载 python装饰器

一、装饰器的含义装饰是指将一个函数传递给装饰器,让装饰器在返回被传入函数之前,对被传入函数执行的一系列操作。通常用于日志记录等比较复杂的环境。二、最直接的装饰器为了记录一个函数的使用开始时间和结束时间,我们直接在函数中添加代码:import timedef func(): #添加部分 startTime = time.time() #函数开始 ...

2018-07-11 10:45:37 247

原创 ubuntu14.04中OpenSSL无法引用dump_publickey

解决方法1使用anaconda2重新创建一个python包,然后使用anaconda2运行即可。下载anaconda2,下载地址:https://www.anaconda.com/download/#linux安装anaconda2,直接执行./Anaconda*.sh运行代码:/path/to/anaconda/bin/python,例如我的anaconda安装在在/home/xx

2018-07-11 10:15:46 372

转载 JDK 的命令行工具

Sun JDK监控和故障处理工具 名称 主要作用 jps JVM Process status Tool,显示指定系统内所有的HotSpot虚拟机进程 jstat JVM Statistics Monitoring Tool,用于收集HotSpot虚拟机各方面运行数据 jinfo Configuration Info For Java,显示虚拟...

2018-03-23 10:37:58 272

原创 Leetcode 155. Min Stack

题目Design a stack that supports push, pop, top, and retrieving the minimum element in constant time. push(x) – Push element x onto stack. pop() – Removes the element on top of the stack. top() – G...

2018-03-22 14:59:45 176

原创 Leetcode 128 Longest Consecutive Sequence

Longest Consecutive SequenceGiven an unsorted array of integers, find the length of the longest consecutive elements sequence.For example, Given [100, 4, 200, 1, 3, 2], The longest consecutive e...

2018-03-22 14:52:01 208

原创 Leetcode 394 Decode String

DecodeString 解析字符串题目描述Given an encoded string, return it’s decoded string.The encoding rule is: k[encoded_string], where the encoded_string inside the square brackets is being repeated exactly...

2018-03-22 14:43:41 220

转载 内存分配与回收策略

Java自动内存管理的两个问题:给对象分配内存回收分配给对象的内存对象的内存分配,往大方向讲,就是在堆上分配,对象主要分配在新生代的Eden区上,如果启动了本地线程分配缓冲,将按线程优先在TLAB上分配。少数情况下也可能直接分配在老年代中,分配的规则不是百分之百固定的,其细节在于使用哪种垃圾收集器组合,还有虚拟机中与内存相关的参数。对象优先在Eden分配绝大多数情况,对象都在...

2018-03-21 17:42:17 171

转载 理解GC日志

例如给出以下GC日志: 33.125:[GC[DefNew:3324K->152K(3712K),0.0025925secs]3324K->152K(11904K),0.0031680 secs]100.667:[FullGC[Tenured:0K->210K(10240K),0.0149142secs]4603K->210K(19456K),[Perm:2999K->2999K(21248...

2018-03-21 15:00:58 120

转载 JVM-垃圾收集器

Serial 收集器使用一个CPU或者一个收集线程区完成工作,工作期间,必须暂停其他所有线程。(Stop the world)新生代复制算法、老年代标记-压缩。 优势:简单而高效,对Client模式下的虚拟机来说很好。ParNew收集器Serial收集器多线程版本,除了用多条线程以外,其他行为包括Serial收集器可用参数、收集算法、Stop the world、对象分配规则、回收策...

2018-03-19 16:59:05 121

转载 垃圾收集算法

标记-清除算法(Mark-Sweep)算法分为两个阶段,标记和清除:标记出所有需要回收对象;统一回收所有标记对象。不足:效率太低(标记和清除都很慢)空间问题(出现不连续的内存碎片)复制算法(解决内存碎片问题)将内存分为两个相等块。当一个块的内存使用完了,将还存在的对象复制到另一块,然后再把已经使用过的内存空间一次清理掉。 目前商业虚拟机都采用这种方法来回...

2018-03-19 14:10:09 137

转载 Java内存管理方式

要真正宣告一个对象死亡,至少要经历两次标记过程:如果对象在进行可达性分析后发现没有与GC Roots相链接的引用链,那它将会被第一次标记并且进行一次筛选,筛选的条件是此对象是否有必要执行finalize()方法。当对象没有覆盖finalize()方法,或者finalize()方法已经被虚拟机调用过,虚拟机将这两种情况都视为“没必要执行”。如果对象被判定为有必要执行finalize()方法,...

2018-03-18 20:55:30 152

转载 可达性分析-内存管理

在主流的商用程序语言的主流视线中,都是称使用可达性分析来判定对象是否存在的。这个算法的基本思路就是通过一系列的成为“GC Roots”的对象作为起始点,从这些节点开始向下搜索,搜索所走过的路劲成为引用链,当一个对象到GC Roots没有任何引用链相连时,则证明此对象时不可用的。 再Java语言中。可作为GC Roots的对象包括下面几种:虚拟机栈(栈帧中的本地变量表)中引用的对象方法区中...

2018-03-18 20:01:24 277

转载 引用计数算法-内存管理

算法:给对象中添加一个引用计数器,每当有一个地方引用它的时候,计数器就加1;当引用失效时,计数器值就减1;任何时刻计数器为0的对象是不可能被使用的。 但是JVM并没有使用引用计数来管理内存,其中最重要的原因就是它很难解决对象之间的相互引用关系。 测试JVM不使用引用计数算法的代码如下(注意参数):/** * VM args : -XX:+PrintGCDetails * testG...

2018-03-18 19:40:43 759

转载 本机直接内存溢出

DirectMemory容量可通过-XX:MaxDirectMemorySize指定,如果不指定,则默认和Java堆最大值(-Xmx)一样。代码如下:import java.lang.reflect.Field; import sun.misc.Unsafe; /** * VM args:-Xmx20M -XX:MaxDirectMemorySize=10M * test:使...

2018-03-16 21:22:03 296

转载 方法区和运行时常量池溢出

在JDK1.6以及之前的版本中,由于常量池被分配在永久代内,我们可以通过XX:PermSize和-XX:MaxPermSize限制方法大小,从而间接限制其中常量池的容量,代码如下:import java.util.*;/** * VM args : -XX:PermSize=10M -XX:MaxPermSize=10M * test:运行时常量池导致的内存溢出异常 */pu...

2018-03-16 21:06:42 216

转载 虚拟机栈和本地方法栈溢出

介绍关于虚拟机栈和本地方法栈,再Java虚拟机规范中描述了两种异常:如果线程请求的栈深度大于虚拟机所允许的最大深度,将抛出StackOverflowError异常。如果虚拟机再扩展栈时无法申请到足够的内存空间,则抛出OutOfMemoryError异常。注意:在栈空间无法分配时,到底时内存太小,还是已经使用的栈空间太大,其本质是同一件事情实验1(StackOverflow...

2018-03-16 18:39:06 300

转载 Java堆溢出

编写Java堆溢出代码代码清单如下import java.util.*;/** * Java堆内存溢出异常测试 * VM args: -Xms20m -Xmx20m -XX:+HeapDumpOnOutOfMemoryError **/public class OOME { static class OOMObject{ } public stat...

2018-03-16 16:20:43 266

原创 hadoop2.7-windows环境搭建

Hadoop分布式环境搭建环境配置JDK:java1.8。这里要保证java环境变量不包含空格,并且java之前环境变量也不包含空格。这里可以用Program Files可以有PROGRA~1代替。例如我的java路径是C:/Program Files/Java/jdk1.8.0_144那么可以用C:/PROGRA~1/Java/jdk1.8.0_144代替。安装java教程看这里。Hadoop:2

2017-08-17 16:15:30 12163 8

翻译 线性分类器SVM(1)

综述我们提出一个更加有效地算法来处理图片分类。这个算法也是神经网络和卷积神经网络的基础。这个方法有两个组件:1、得分函数:将数据映射到类分数,2、损失函数:来计算预测分数和真实函数之间的差距。我们会把这个叫做优化问题。因为我们会尽可能的用改变得分函数的参数来降低损失函数的值。把图片映射到标记分数上第一个组件就是定义一个函数将图片的像素值映射到一个分类置信分数中去。我们会用一个很坚实的例子来开发这个方

2017-06-20 17:18:53 1623

翻译 图片分类-K近邻分类器

你可以注意到当我们做预测的时候,如果仅仅用最近的图片的是远远不够的。其实,我们更常用的是k近邻分类器。这个思想非常简单。代替寻找训练集中最近的图片,我们会寻找k个最相近的图片,并且让他们再测试图片上投票。特别的,再k=1的时候,我们已经涵盖了最近邻分类器。只管来说,更高的k值有一个平滑的影响使得分类器对极端值有更好的处理: 这张图表达了最近邻分类,和5-最近邻分类之间的差距,用二维的电荷3个类别(

2017-06-20 14:00:15 4139

翻译 图片分类-最近邻分类(1)

作为我们学习的第一个方法,我们会开发一个叫最近邻分类器的东西。这个分类器与卷积神经网络(CNN)没有什么关系并且在实际中很少用到。但是他会让我们对图片分类问题的基础算法有一个初步的了解。 如图,分类数据集为:CIFAR-10。一个非常有趣的图片分类数据集是CIFAR-10数据集。这个数据集包含60000个32*32像素的小图片。每个图片都被标记成十种类别中的一种(例如“airplane, auto

2017-06-20 12:01:48 1827

翻译 python学习(18)--图片分类

图片分类学习动机.在这一节中我们会引入图片分类为题。这也是从一个合适的集合中分配给图片一个标记的任务。这是计算机视觉的核心问题之一。鉴于它的简单性,有一大批实用应用。更多的是,我们可以在以后的章节中看到,一些看似分离的计算机视觉任务(例如类别监测,分割)都可以归为图片分类。举例例如,如下的图片模型可以提取一个图片并给他四种label的可能性(猫,狗,帽子,杯子)。在图片中可以看到,一个图片在计算机中

2017-06-17 12:09:36 16427 1

翻译 python学习(17)--Matplotlib

Matplotlib是一个画图库,这一节我们提供了简明的教程,使用类似于MATLAB.画图matplotlib最重要的函数就是plot,可以让你画出2D的图。例如:import numpy as npimport matplotlib.pyplot as plt# Compute the x and y coordinates for points on a sine curvex = np.a

2017-06-15 18:01:59 275

翻译 Python学习(16)--SciPy

图片操作Scipy提供了很多基础的函数去处理图片。例如,它有从硬盘读到numpy数组的函数,也有将numpy数组写到硬盘的函数,并且可以重新设置大小。这里有一个简单的例子来展示这些函数:from scipy.misc import imread, imsave, imresize# Read an JPEG image into a numpy arrayimg = imread('assets/

2017-06-15 17:53:16 427

翻译 python学习(15)--numpy库(2)

Numpy是一个Python的科学计算库。它提供了高性能多位计算对象,并且对其提供了大量对象。如果你对Matlab比较熟悉,那么这个文档对你是有帮助的。向量一个numpy向量是一系列相同类型的并且被一切非负的整数索引。维数就是向量的排名,一个向量的形式就是一个整数的元组在每一维数上给予一个大小。 我们可以从python的lists中初始化numpy向量,并且用方括号来访问对象:import num

2017-06-15 17:37:27 637

翻译 python学习(14)--numpy库(1)

本文主要翻译自python Numpy Tutorial 你也可以使用Ipython Notebook教程Python使用python实现快速排序:def quicksort(arr): if len(arr) <= 1: return arr pivot = arr[len(arr) // 2] left = [x for x in arr if x <

2017-06-14 20:04:34 315

原创 python学习(13)————jieba进阶生成词云

提取小说《开国太后纪事》得到的结果 安装WordCloud构建词云的方法很多,这里我们介绍一下WordCloud的使用方法,WordCloud是可以自定义图片背景,然后通过给的文档自动生成词云,它会根据词出现频率的大小来确定词的大小。安装方法有两种: 一种是自己下包,并用pip安装依赖然后再安装,一种是直接安装: 它的官网是: 官网: https://amueller.github.io/w

2016-08-27 10:17:42 672

转载 python学习(12)————jieba分析数据

jieba安装jieba是一个python开发的中文分词工具 安装方法:全自动安装:进入python安装路径,进入Scripts文件夹,使用easy_install或者pip安装半自动安装:先下载http://pypi.python.org/pypi/jieba/ ,解压后运行python setup.py install手动安装:将jieba目录放置于当前目录或者site-packages

2016-08-26 17:25:16 1300

原创 python学习(11)———判断语句与循环语句

判断语句在python里面,判断语句主要是if,elif和else。这三种语句的判断方式,我们先从if开始。if语句if语句是很简单的,它只需要判断当前状态值与需要值的比较。如果达到条件,则进行相应的操作。这里我们举一个游戏的例子,一个人在体力小于20的时候为濒死状态。power=10if(power<20): print "Is going to die"得到的结果: 可以通过判断

2016-08-22 16:48:39 373

原创 python学习(10)————函数与模块

函数的命名函数是一个程序的必备元素,它可以简化主体函数,让程序看的更加具体、形象。 函数具有三个特征:首先,它们给一段代码命名,并让它可重复使用;其次,它获取参数的方式就像python脚本获取argvs一样;最后,用1和2可以让你实现你的小脚本。这里,我们给出了一些基本的函数使用案例:# -*- coding: utf-8 -*-#以下四种方式介绍了四种传参方式,有多参数和单参数方式#第一

2016-08-21 17:47:37 329

原创 python学习(9)———文件操作

常用文件操作函数open():打开文件read():读取文件的内容,可以把内容赋值给一个变量。close():关闭文件,就像文件编辑器里面的保存readline():读取文件中的一行truncate():清空文件中的内容write(‘stuff’):向文件中写数据’stuff’ 代码:from sys import argvscript, filename = argvprint "

2016-08-21 16:46:01 302

原创 python学习(8)————读取文件

我们已经知道了如何使用argv参数获取数据以及使用输入获取数据,现在我们开始学习从文件中获取数据。 这次读文件,需要我们编写两个文件,一个是执行脚本文件(ex8_1.py)一个是读取的文档文件(data.out),文档文件(data.out)的内容为:This is stuff I typed into a file.It is really cool stuff.Lots and lots

2016-08-21 16:21:50 282

原创 python学习(7)————argv参数引用

这一章主要学习argv参数的运用。argv参数是由计算机命令行执行程序时候添加的后缀。以下是使用的方法:# -*- coding: utf-8 -*-from sys import argvscript, first, second, third = argvprint "The script is called:", scriptprint "Your first variable is:",

2016-08-21 15:59:29 803

原创 python学习(6)————输出、元组、转义符

输出函数基本使用方法# -*- coding: utf-8 -*-print "Mary had a little lamb."print "Its fleece was white as %s." % 'snow'print "And everywhere that Mary went."print "." * 10 #这个输出是

2016-08-21 12:06:43 2041

原创 python学习(5)———多变量及其输出

多变量输出为了避免重复变量的输出,我们可以用python中的str模板。例如,我们想得到一个这样的模板,每当我们输入一个名字例如(Jack)的时候,它就输出”Hello,Jack!”。为了得到以上模板,我们写了如下的代码。# -*- coding: utf-8 -*-name=raw_input("what's your name?") #输入你的名字greeting="Hello,%s!"%

2016-08-20 12:34:50 8991

原创 python学习(4)———变量和命名以及输入

变量python 中,变量基本上就是代表某个值的名字,例如,你想让x代表3,那么只需要执行以下语句: >>>x=3 =表示赋值,也就是说x被赋值了数值3,也可以说将变量x绑定到了值3上。绑定了以后,我们就可以用表达式来使用变量了。 >>>x*2 6 以上是用解释器运行语句后的结果,可以看到得到的结果为3*2的结果。一个简单的例子农场里有八只兔子,4只鸡,现在让你数一共有

2016-08-20 11:13:48 405

原创 python学习(3)———数字和计算

运算符号表 符号 含义 + 加法 - 减法 * 乘法 / 除法 % 求模(余数) < 小于 > 大于 <= 小于等于 = 大于等于 ** 乘方 <> 不等于(不建议使用)运算符号使用加减乘除的使用(除法特例) 为了方便示例,使用python解释器运行以下几个运算#以下为python各运算

2016-08-20 10:27:04 333

原创 python学习(2)———第一个python程序

python的第一个程序进入python解释器,可以从cmd直接输入python进入,然后,输入print “Hello,World!”,得到以下结果: 这说明python已经正常安装,并且你已经成功运行你的第一个python程序啦,这里,<<<符号就是提示符,可以在后面写下你要运行的语句比如print “Hello,World!”,然后按下回车,python就回执行这条语句,也就打印

2016-08-20 10:01:43 345

原创 python学习(1)———安装python

python环境搭建下载python 链接地址:http://python.org/download 确保下载python2的版本或者python3的版本。最好下载python2,因为网上大部分教程都是python2的。笔者使用的是python2.7.11。安装python 本文使用的是windows平台,直接下载python的msi安装文件,记住安装路径。 安装界面1

2016-08-19 18:44:40 271

广度优先算法

本代码是根据教师的上课内容写出的最基本的图论算法,对刚接触编程的人员有很大帮助。

2014-05-25

空空如也

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

TA关注的人

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