自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

超超级钢铁侠

每天进步一点点

  • 博客(241)
  • 收藏
  • 关注

原创 如何使用PyDenseCRF

项目地址:https://github.com/lucasb-eyer/pydensecrf##环境配置安装Pyhton,Cython,Anaconda

2018-12-01 15:44:36 5991

转载 区块链简单实现

好玩的区块链实现的小例子:区块链Java实现

2018-06-01 16:41:10 1668

原创 微信聊天机器人

无意中发现一个有趣的python库itchat,网址是itchat可以实现很多好玩的功能,哈哈哈。以后可以有自己的聊天机器人啦。记录一下。#coding=utf8import requestsimport itchatKEY = '71f28bf79c820df10d39b4074345ef8c'def get_response(msg): # 这里我们就像在“3. 实现最

2018-01-18 21:57:46 1133

原创 ERROR 1366 (HY000):Incorrect string value(windows环境)

windows的默认编码为gbk,如果你在win下运行SQL文件时插入中文序列发现老是出现ERROR 1366 (HY000):Incorrect string value错误,并且更改编码方式为utf-8后仍然不能解决问题的话,尝试用Navicat来运行SQL吧。

2018-01-18 18:28:27 522

原创 黑客与画家笔记

Because I didn’t fit into this world, I thought that something must be wrong with me. I didn’t realize that the reason we nerds didn’t fit in was that in some ways we were a step ahead. We were alread

2018-01-14 17:36:22 389

原创 Redis笔记

//有效期设置SET resource:lock "Redis Demo"EXPIRE resource:lock 120TTL resource:lock => 113// after 113sTTL resource:lock => -2//list尾部插入RPUSH friends "Alice"RPUSH friends "Bob"//list头部插入LPUSH fr

2018-01-12 11:20:23 292

原创 爬虫笔记

基本操作#简单爬百度主页import urllib.requestfile = urllib.request.urlopen("http://www.baidu.com")data = file.read()print(data)#存到本地文件fhandle = open("C:/MyCode/Python/Python3/Scratch/1.html","wb")fhandl

2017-12-25 15:30:20 361

原创 HackerRank难题记录

最近喜欢上HackerRank刷题,把刷题过程中遇到的一些有趣的,有难度的问题记录下来。SQL1.Occupations2.Binary Tree Nodes3.New CompaniesAlgorithms1.Hackerland Radio Transmitters

2017-12-07 19:49:03 4667 1

原创 ubuntu 15.04 安装Caffe

安装过程按照http://www.linuxidc.com/Linux/2016-09/135034.htm即可,出现问题可在文章https://www.cnblogs.com/bigdata01/p/6885941.html中查找,亲测可用,祝您安装顺利!

2017-11-18 20:08:00 273

原创 Cocos2d游戏设计(1)-入门

引言本科毕业论文课题是做一款动作类游戏,指导老师希望使用H5和JS完成,经过调研,我决定使用Cocos2d-x游戏引擎来完成游戏设计,我是用的版本是cocos2d-x-3.16,包含了cocos2d-JS和cocos2d-Html5,当然也可以制作运行本地代码的游戏。借助这次毕业论文的机会,好好学习一下游戏引擎技术和游戏开发技术,顺便深入一下前端,一举多得。开发环境配置-Windows1.安装Pyt

2017-11-07 14:36:26 854

原创 设计模式系列-工厂模式

面向对象设计的基本原则(1)OCP(开闭原则,Open Olosed Principle)—-软件的实现应该对扩展开放,对修改关闭 (2)DIP(依赖倒转原则,Dependence Inversion Principle)—-针对接口编程,不要针对实现编程 (3)LoD(迪米特法则,Law of Demeter)—-一个对象应当对其他对象有尽可能少的了解,”只与有直接关系的朋友通信,不要和陌生人

2017-07-15 14:38:09 412

原创 Android初体验-电话拨号APP

对Android很感兴趣,试着玩儿了一下,好玩儿,嘻嘻。按照这篇文章把环境搭好,我用的真机测试,记得把手机调成USB调试模式。 布局文件activity_main.xml<?xml version="1.0" encoding="utf-8"?><android.support.constraint.ConstraintLayout xmlns:android="http://schem

2017-07-15 09:58:19 751

原创 MySQL中高级知识-锁

有关MySQL锁的基础知识就不说了。总结来讲,读锁会阻塞写,但是不会阻塞读,而写锁会把读和写都阻塞。Myisam的读写锁调度是写优先,不适合主表引擎,偏读的时候才适用。InnoDB支持事务,采用了行级锁,可以实现更高的并发度。只有通过索引条件检索数据,InnoDB才使用行级锁,否则,InnoDB将使用表锁。

2017-07-14 14:41:52 324

原创 MySQL中高级知识-查询截取分析

工作中发现慢SQL执行情况产生怎么做呢? 开启慢查询日志,设置阈值;explain+慢SQL分析;show profile;进行SQL数据库服务器的参数调优;查询优化(1)小表驱动大表,小的数据集驱动大的数据集; 先看看in和exists的使用区别 如select * from A where id in (select id from B);看成for循环的话等价于for select i

2017-07-13 20:21:40 491

翻译 聚类论文分析-A Hybrid Approach to Clustering in Big Data

谈谈对论文A Hybrid Approach to Clustering in Big Data的理解 在这篇论文中作者提出了一种新的聚类方法,叫clusiVAT算法,并且与 k-means, single pass k-means, online k-means,和clustering using representatives (CURE) 等算法进行了对比。对聚类的理解聚类(clustrer

2017-07-11 17:35:55 1994

原创 读过的优秀博客

数据结构与算法缓存淘汰算法-LRU算法JavaEESpringMVC详解

2017-07-09 12:42:24 454

原创 乐观锁和悲观锁机制

对于多数应用程序,可以优先考虑把数据库系统的隔离级别设置为Read Commited,这样做能够避免脏读,即避免读到未提交的数据,同时具有比较好的并发性能。这样做会导致不可重复读,幻读等这些并发问题,可以采用悲观锁和乐观锁来控制。MySQL当前事务的隔离级别是通过@@tx_isolation变量来设定的,默认隔离级别为Repitable Read,通过set transaction isolatio

2017-07-09 12:06:14 748

原创 MySQL中高级知识-索引优化

SQL语句性能下降的原因原因可能有以下几种: (1)SQL语句本身写得不够优秀 (2)索引失效 (3)关联(join)查询太多 (4)服务器参数设置(缓存,线程数等) ……SQL执行顺序人类写SQL和理解SQL的顺序大体是: SELECT DISTICT --> FROM ON (JOIN)-> WHERE -->GROUP BY --> HAVING --> ORDER BY -->

2017-07-08 17:36:07 700

原创 MySQL中高级知识-MySQL架构介绍

对于MySQL5.6,在Linux上安装好之后把配置文件/usr/share/mysql/my-default.cnf 拷贝为/etc/my.cnf作为配置文件。log-bin为二进制日志文件,log-error默认是关闭的,记录严重的错诶和警告信息,查询日志log默认关闭,记录查询的SQL语句,如果开启会降低MySQL的整体性能。frm文件存放表结构,myd存放数据,myi文件存放索引。MySQL

2017-07-08 16:13:04 632

原创 在线分布式数据库原理

事务单元之间的处理事务的ACID要求事务需要满足原子性、一致性、隔离性和持久性。事务具有了隔离性,为什么要分几种隔离级别呢?也就是未提交读、已提交读、可重复读和可串行化?实际上事务的这几种隔离级别对应了多个事务执行时对并发的容忍度,比如在读写场景中, 对应着可串行化,这样做可以具有较高的隔离性,但是系统性能很低,可以把读并行化,读和写加上读写锁,这时隔离级别成为可重复读,系统性能进一步提高。

2017-07-08 01:21:37 770

原创 一步一步理解Java NIO(下)

阻塞与非阻塞IO

2017-07-07 16:25:00 346

原创 一步一步理解Java NIO(上)

Java NIO简介Java NIO是从Java1.4版本开始引入的一个新的IO API,可以代替标准的Java IO API。NIO与原来的IO有同样的作用和目的,但是使用方式完全不同,NIO是面向缓冲区的、基于通道的IO操作,NIO对文件的读写更加高效。通道和缓冲区Java NIO的核心在于通道(Channel)和缓冲区(Buffer)。通道表示IO设备(如文件、套接字等)的连接,Buffer用

2017-07-06 23:40:14 433

原创 Java多线程-线程八锁

所有的非静态同步方法用的都是同一把锁,即实例对象本身,或者说this对象,如果一个实例对象的非静态同步方法获取锁后,该实例对象的其他非静态同步方法必须等待获取锁的方法释放锁后才能获取锁。如果别的对象的非静态同步方法与该实例对象的非静态同步方法获取不同的锁,则不需要等待。 所有的静态同步方法用的也是同一把锁,即类对象本身,所以静态同步方法与非静态同步方法之间是不会有竞态条件的,但是一个静态同步方法获

2017-07-06 20:30:55 3760

原创 Java多线程-线程按序交替

线程按序交替编写一个程序,开启三个线程,这三个线程的ID分别为A、B、C,每个线程将自己的ID在屏幕上打印10遍,要求输出的结果必须按顺序显示,如:ABCABCABC……依次递归。使用Condition进行线程间通信即可(也可以使用wait()和notify()):package JavaThread;import java.util.concurrent.locks.Condition;impo

2017-07-06 18:38:29 854

原创 设计模式系列-单例模式

单例模式的作用:保证一个类只有一个实例,并且提供一个访问该实例的全局访问点。单例模式常见的应用场景(1)Windows系统的任务管理器,回收站。 (2)项目中读取文件配置的类,网站计数器等。 (3)应用程序的日志应用。 (4)数据库连接池的设计 (5)Servlet编程中的每一个Servlet,Spring中ApllicationContext,每一个Bean,以及SpringMVC中的控制

2017-07-06 14:44:56 261

转载 聊聊并发-Java中的Copy-On-Write容器(转载)

Copy-On-Write简称COW,是一种用于程序设计中的优化策略。其基本思路是,从一开始大家都在共享同一个内容,当某个人想要修改这个内容的时候,才会真正把内容Copy出去形成一个新的内容然后再改,这是一种延时懒惰策略。从JDK1.5开始Java并发包里提供了两个使用CopyOnWrite机制实现的并发容器,它们是CopyOnWriteArrayList和CopyOnWriteArraySet。C

2017-05-28 16:59:22 440

原创 使用读写锁设计缓存系统

如何用简短的代码设计一个Cache呢,简单的HashMap设计比较简单,考虑到并发性,如果使用synchronize关键字可能会降低系统性能,这时我们可以使用读写锁设计一个比synchronize方法更加优秀的Cache系统。package CatcheTest;import java.util.HashMap;import java.util.Map;import java.util.conc

2017-05-27 22:02:02 463

原创 深入Spring(1)

1.什么是servletServlet是服务器端运行的一个程序,是一个被编译好的Java类,Web容器的启动,需要依赖Servlet。当web服务器开始执行时,servlet类就被初始化,当用户通过浏览器访问的时候,会输入URI,这个时候,web服务器就通过Servlet来分发请求执行不同的内容。HttpServlet最上层是继承Servlet这个接口类,而Spring主要通过DispatcherS

2017-05-20 20:28:36 254

原创 我的开源资料

最近喜欢上了些云笔记。自己记录的笔记,笔记不用在意原创性,而且查阅起来感觉比博客还要方便,哈哈!我的GitHub,亲们有空star下呗我的网易云笔记,记录一些乱七八糟的东西,为了自己查询方便,做个列表:1.C++ Notes(1)CSDN Notes (2)STL 源码阅读Notes2.Data Structures and Algorithms Notes(1)CSDN Notes (2)大话

2017-05-10 20:37:22 352

原创 最大和子矩阵

一道经典的动态规划问题:最大和子矩阵 有一个正整数和负整数组成的NxN矩阵,请编写代码找出元素总和最大的子矩阵。请尝试使用一个高效算法。 给定一个int矩阵mat和矩阵的阶数n,请返回元素总和最大的子矩阵的元素之和。保证元素绝对值小于等于100000,且矩阵阶数小于等于200。 测试样例: [[1,2,-3],[3,4,-5],[-5,-6,-7]],3 返回:10思路: 将二维的矩阵最大

2017-04-19 21:30:03 558

原创 数据库练习题笔记

掌握知识最好的方法还是练习~ 以下可能有大量牛客网网站内容和牛客网用户的解析内容,侵删~1.关于数据库语句执行顺序

2017-04-09 11:14:24 412

原创 为什么TCP连接请求要三次握手而不是两次

2017年4月7日参加华为的面试被问到这个问题,没有答出来,之前有看过解答的,只是给忘了,贴下来以备复习:

2017-04-08 11:07:54 629

原创 Java与模式(1)

要学习详细的设计模式内容可以阅读《Java与模式》,在这里只做一点简单总结。 1.简单工场模式的结构如果系统仅有一个产品角色,抽象产品角色可以省略,这是简单工场模式为: 有时候工场角色可以由产品角色代替(如Java.text.DateFormat类),这时结构变为: 单例模式来源于简单工场模式,这时要注意与单例模式的区别,单例模式要求构造函数为私有,单例模式的实例化只能由自身的静态工场方法

2017-04-08 10:48:38 443

原创 源码面前,原形毕露之ArrayList源码阅读

1.类的定义:public class ArrayList extends AbstractList implements List, RandomAccess, Cloneable, java.io.Serializable可以看出,ArrayList可以序列化,使用clone()方法可进行浅层复制。2.数据成员的声明:private static final long seri

2017-04-07 00:25:14 263

原创 源码面前,原形毕露之String源码阅读

1.String位final类,不可继承,其声明为 public final class String implements java.io.Serializable, Comparable<String>, CharSequence2.方法public int codePointAt(int index) 直接返回索引下的char元素的Unicode code point,如Strin

2017-04-03 12:05:39 386

原创 二叉树最低公共祖先

在笔试中遇到了二叉树最低公共祖先的问题,现在将这个问题彻底地总结一下。其实相关问题还不少,比如二叉树是BST还是普通二叉树,二叉树存在指向父结点的指针吗?1.二叉搜索树的情况,这样的情景下处理比较简单一些,前序遍历该二叉树,如果当前结点的值比两个所求结点大,则最低公共祖先肯定存在于当前结点的左子树中,如果当前结点的值比两个所求结点小,则最低公共祖先肯定存在于当前结点的右子树中,否则,当前结点即为所求

2017-03-22 22:13:23 654

原创 Effective Java----2

1.equals方法以及HashCode方法 重写equals方法满足如下的约定 (1) 自反性(feflexive) (2) 对称性(symmetric) (3) 传递性(transitive) (4) 一致性(consistent)这几个特性都比较容易理解,违反其中任何一条,都将导致重写的equals方法不能正常工作,具体实施起来,即要按如下步骤重写equals方法:(1) 使用==操

2017-03-20 21:51:08 321

原创 Effective Java----1

1.Builder 模式 当类的构造函数有多个参数时,针对不同数量的构造函数,构造函数的编写显得很麻烦,可以选择使用Javabean模式编写,按照javabean的写法,私有化成员变量, 私有构造方法 ,通过setter和getter来设置和获取值 ,这种构造的缺点是传入的参数不好检测,例如有些非空的数据等,这时采用Builder模式来编写会比较方便,示例如下://Student .javapa

2017-03-17 16:56:32 344

原创 Thinking in C++(1)

1.对变量或者对象声明explicit可防止编译器产生隐式转换,但显式转换不受影响。2.有些编译器不支持static变量类内初始化(VS2015中是不支持的),对于这样的变量可以在类外初始化,但是不能在主函数中初始化。3.iteratior类似于于一个T*指针,所以const iterator 相当于 T* const ,表示指向的元素是一个常量,是可以改变值的,而STL 中的const_itera

2017-03-16 21:27:13 284

原创 两个基本的动态规划问题

1.题目: 有一个XxY的网格,一个机器人只能走格点且只能向右或向下走,要从左上角走到右下角。请设计一个算法,计算机器人有多少种走法。 给定两个正整数int x,int y,请返回机器人的走法数目。保证x+y小于等于12。 测试样例: 2,2 返回:2import java.util.*;public class Robot { public int countWays(int x,

2017-03-15 13:39:29 654

空空如也

空空如也

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

TA关注的人

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