自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(124)
  • 资源 (9)
  • 问答 (2)
  • 收藏
  • 关注

原创 如果学习开源框架

当我们在学习一个开源框架时,成熟的开源框架一般都会非常庞大,各个模块、包之间会有依赖关系,而如果只是修改开源包的话,始终觉得不能真正地从根本上理解、实现一个开源框架。如果自己去模仿着写一个的话,也会非常痛苦,因为想实现模块A,但是写着写着,发现模块A依赖了太多其他模块的东西,导致无法继续模仿下去。有一个技巧可以解决上述问题,我们把开源包用IDE打开,然后去除想要学习的模块A,以及依赖模块A的包...

2018-09-29 21:26:24 369 1

原创 guava concurrent学习(一):AbstractFuture

一、内部类分析1、Waiter用于将多个等待的线程串起来,内部有成员变量thread与next,组成等待此future完成的链表,最重要的方法是unpark如下:void unpark() { // releaseWaiters方法会调用这里。 // This is racy with removeWaiter. The consequence of the race is ...

2018-09-28 21:53:28 1748

原创 java asm GeneratorAdapter生成子类并加载

加载器:package com.zz4955.asm.generatoradaptor;public class MyClassLoader extends ClassLoader { public Class defineClass(String name, byte[] b) { return defineClass(name, b, 0, b.length...

2018-08-09 17:56:35 1268

原创 Netty ByteBuf 转 String

public String convertByteBufToString(ByteBuf buf) { String str; if(buf.hasArray()) { // 处理堆缓冲区 str = new String(buf.array(), buf.arrayOffset() + buf.readerIndex(), buf.readableBytes()...

2018-07-12 23:32:00 9461 2

原创 jmeter导入jmx文件报错:missing class com.thoughtworks.xstream.converters.ConversionException

参考博客:jmeter导入jmx文件报错:missing class com.thoughtworks.xstream.converters.ConversionException如果还不行,就把jpgc-json-2.6.zip里的文件放到lib\ext下。

2018-06-04 19:20:46 3833

原创 Springboot 之 使用POI操作excel

为了方便地使用poi操作excel,在这里,使用类BubbleSheet对Poi中的Sheet进行封装,BubbleSheet类如下所示:import org.apache.poi.hssf.usermodel.HSSFCellStyle;import org.apache.poi.hssf.usermodel.HSSFPalette;import org.apache.poi.hssf.us...

2018-05-07 17:15:56 1693

原创 mac升级失败、开不了机恢复资料的方法

参考这里的方法:MacBook Pro 系统故障,无法启动,如果拷贝硬盘里的数据?我的做法: 先是通过磁盘工具挂载Macintosh HD磁盘(一开始系统不会自动挂载),然后是通过终端,用nc命令将数据传到类unix系统上(因为也要使用nc建立服务器端)。之所以不直接在终端里拷到移动硬盘里,是因为移动硬盘在mac上挂载为只读模式。 ...

2018-04-18 10:41:50 11660

原创 java中的&& & || |

有的博客把按位&称为非短路逻辑与,把按位|称为非短路逻辑或,其实仅仅是效果上等同而已,是按位&与按位|的巧妙运行,并不是java本身存在这样的操作,真 & 真  ===》 真真 & 假  ===》 假假 & 真  ===》 假假 & 假  ===》 假从效果上可以发现,按位&可称为非短路逻辑与,不论第一个判断表达式结果如何,第二个判断表示式都会被求值,而前后两个判断表达式结

2018-01-03 20:28:00 456

原创 编程随想

面向对象,每个人都是面向对象的高手,不懂手机内部原理,依然把手机玩的很溜;我们会使用那么多软件,却不知道软件是如何实现的。这个世界都是面向对象的。这个世界又是面向过程的,你要过完这一生,得先经过出生、成长、衰老、死亡。这个世界存在函数式吗?是的,特定自然规律在作用范围内,给定一个输入,必定能得到预计的输出。人是不可靠的,这世界也存在偶然,要不然,世界就是函数式的了,或许也会少很多乐

2017-11-01 18:04:35 15233

原创 memcmp的问题

#include#includestruct A{ int a; char str[8]; int b;};struct B{ int a; char str[8]; short b; short c;};int main(){ //返回0,但是不一样。 A a1; B b1; memset(&a1,0,sizeof(a1)); a1.a=1; memcpy

2017-10-10 17:34:41 1720

原创 CHECK_NOTNULL template

#include using namespace std;#define CHECK_NOTNULL(val) \ CheckNotNull(__FILE__, __LINE__, "'" #val "' Must be non NULL", (val))template T* CheckNotNull(const char* file, int line, const cha

2017-09-02 16:14:26 2211

原创 继承、向上转型、向下转型时虚函数调用规则

#include using namespace std;class A{public: virtual void print(){ cout<<"virtual A print"<<endl; } void fun(){ cout<<"non-virtual A fun"<<endl; }};class B:publi

2017-09-01 11:58:32 819

原创 LRU算法 C++实现

整体思路:一个循环队列同时使用节点的计数来标记节点的新旧信息,如果有新节点加入时,就把最旧的节点清空,将新节点加入。具体画一下图比较好理解。#include #include #include #include using namespace std;static const int LEN = 5;int main(){ vector vires(LEN,-1);//

2017-09-01 09:15:11 2949

原创 python wechat_sdk SSLError

在用wechat_sdk开发微信公众号时,出现了以下错误:SSLError: HTTPSConnectionPool(host='api.weixin.qq.com', port=443): Max retries exceeded with url最开始以为是代码写的不对的问题,最后想起来,之前更新了一次requests包,我把requests包改回低版本就没问题了。相关链接:S

2017-08-28 11:05:08 2245 1

原创 深入理解红黑树

对于红黑树的原理与算法,推荐大家看这个博客:红黑树(一)之 原理和算法详细介绍在这里,我想写一些自己的体会,在变色、旋转过程中,是如何使树满足红黑树的规则的。请结合上面那个博客阅读。插入情况1:插入情况2:插入情况3:删除的情况(4种):

2017-08-26 08:30:30 401

原创 传递类的成员函数给thread

#include #include using namespace std;class love{public: void saylove(string name); static void sayloveyou();};void love::saylove(string name){ cout<<"I love "<<name<<"!"<<endl;}

2017-08-17 19:30:56 3069 1

原创 矩阵链乘法

#include #include using namespace std;void print(vector &vcname, vector> &virecord, int b, int e){//包含e if(b==e) cout<<vcname[b]; else{ /* cout<<"("; print(

2017-07-23 11:37:12 326

原创 BFPRT实现

这里自己实现了一下BFPRT算法,并与别人的实现版本进行效率对比,以及与C++标准库中的sort排序后选取top-k进行效率对比。发现,C语言版本的效率更高一些,在数据量不是海量数据时,sort的速度竟然比BFPRT要快。//// BFPRT.cpp// NowCoder//// Created by soybeanmilk on 2017/7/22.// Copyright

2017-07-22 16:52:33 361

原创 全排列

/*#include #include using namespace std;vector vib;vector vires;void dfs(vector &vi,int ct){ if(ct>=vi.size()){ for(auto ieh: vires) cout<<ieh<<" "; cout<<endl;

2017-07-20 19:10:50 283

转载 最小堆

原博客:白话经典算法系列之八 MoreWindows白话经典算法之七大排序总结篇/* 说明: 1、堆数组的下标从0开始; 2、下标为i的父结点的下标为(i-1)/2,其子节点为2*i+1以及2*i+2; 3、最后一个叶子节点(下标为i-1)的父节点为(n-1-1)/2即n/2-1. */#include #include using namespace std;void M

2017-07-20 14:51:36 368

转载 快速排序

原博客:白话经典算法系列之八 MoreWindows白话经典算法之七大排序总结篇#include #include using namespace std;int partition(vector &vi,int start,int end){//包含end int temp=vi[start]; while(start<end){ while(end>

2017-07-20 11:38:43 220

转载 归并排序

原博客:白话经典算法系列之八 MoreWindows白话经典算法之七大排序总结篇#include #include using namespace std;void merge(vector &vi, int start, int mid, int end, vector &vitp){ int k=0;//注意:这个k每次调用merge时都从0开始 int i=sta

2017-07-20 10:39:54 315

转载 直接选择排序

原博客:白话经典算法系列之八 MoreWindows白话经典算法之七大排序总结篇#include #include using namespace std;void directselectsort(vector &vi){ if(vi.size()<=1) return ; int n=vi.size(); for(int i=0;i<n-1;++i){//当选择

2017-07-20 10:38:07 219

转载 shell排序及两种优化

原博客:白话经典算法系列之八 MoreWindows白话经典算法之七大排序总结篇#include #include using namespace std;void shellsort(vector &vi){ if(vi.size()<=1) return ; int n=vi.size(); for(int step=n/2;step>0;step/=2){

2017-07-20 09:14:03 589

转载 插入排序及2种优化

原文:白话经典算法系列之八 MoreWindows白话经典算法之七大排序总结篇#include #include using namespace std;void insertsort(vector &vi){ if(vi.size()<=1) return ; int n=vi.size(); for(int i=1;i<n;i++){ int

2017-07-20 00:45:36 259

转载 冒泡排序及2种优化方法

原博客:白话经典算法系列之八 MoreWindows白话经典算法之七大排序总结篇#include #include //#include //size_tusing namespace std;void bubble(vector &vi){ if(vi.size()==0) return ; int n=vi.size();//还是不要用size_t了,要不然,(s

2017-07-19 23:41:48 359

原创 24点游戏

参考链接:速算24点上面的链接里的代码是不允许计算中出现小数,这也是题目的要求,所以,那个代码对于“5 5 5 1”这个组合是没法计算出正确结果的。我把程序改为能计算"5 5 5 1"之类的需要出现小数的情况,以及能输出相应的表达式,这里只输出一种可能的表达式。/*题目规定整个计算过程中都不能出现小数,所以下面的代码能过。但是对于5,5,5,1是不能得到正确结果的,原因在于这里用的

2017-07-19 10:09:09 350

原创 二叉搜索树

#include #include using namespace std;typedef struct node{ int data; struct node* lchild; struct node* rchild;} Node,*pNode;void insert_sbt(pNode &T, int data){ if(T==NULL){

2017-07-18 14:23:17 157

原创 ubuntu 锐捷客户端提示认证网卡存在多个IP地址的解决方法

ubuntu下用锐捷登录时提示:检测到您的认证网卡上设置有多个ip,请只保留一下ip,再进行认证解决方法:删除网卡上的ip地址:ip addr del [ip地址] dev [网卡名]

2017-07-03 22:24:10 4264 5

原创 matplotlib subplots 设置总图的标题

matplotlib subplots 设置总图的标题 :fig.suptitle(dname,fontsize=16,x=0.53,y=1.05,)

2017-07-01 13:26:23 13460 1

原创 matplotlib subplots 设置每个子图的x轴的标号

matplotlib subplots 设置每个子图的x轴的标号,需要使用ax0.set_xticklabels(['a','b','c'...])

2017-07-01 12:19:49 8093 1

原创 matplotlib subplots 调整子图间矩

在matplotlib中,用subplots画子图时,有时候需要调整子图间矩,包括子图与边框的间矩,子图间上下间矩,子图间左右间矩,可以使用fig.tight_layout()函数:Help on method tight_layout in module matplotlib.figure:tight_layout(renderer=None, pad=1.08, h_pad=Non

2017-07-01 12:17:23 12719

原创 Insert Interval

Given a set of non-overlapping intervals, insert a new interval into the intervals (merge if necessary).You may assume that the intervals were initially sorted according to their start times.E

2017-06-27 16:32:18 263

原创 C++ split函数

#include#include#includeusing namespace std;vector split(string s,char token){ istringstream iss(s); string word; vector vs; while(getline(iss,word,token)){ vs.push_back(w

2017-06-22 18:47:50 4062

原创 遍历一遍找到第一个出现一次的字符

题目描述找出字符串中第一个只出现一次的字符   输入描述:输入一个非空字符串输出描述:输出第一个只出现一次的字符,如果不存在输出-1输入例子:asdfasdfo输出例子:o使用map记录字符出现的次数,使用vector记录只出现一次的元素及其次序,在删除重复的元素的同时保持先后次序,最终返回v

2017-06-22 13:48:14 559

原创 成绩排序

题目描述查找和排序题目:输入任意(用户,成绩)序列,可以获得成绩从高到低或从低到高的排列,相同成绩      都按先录入排列在前的规则处理。   例示:   jack      70   peter     96   Tom       70   smith     67   从高到低  成绩               peter   

2017-06-22 00:55:06 372

原创 矩阵乘法计算量估算

编写程序计算不同的计算顺序需要进行的乘法次数    输入描述:输入多行,先输入要计算乘法的矩阵个数n,每个矩阵的行数,列数,总共2n的数,最后输入要计算的法则输出描述:输出需要进行的乘法次数输入例子:350 1010 2020 5(A(BC))输出例子:3500//3 50 10 1

2017-06-22 00:05:23 2387

原创 火车进站 一个入栈序列的所有出栈顺序

题目描述给定一个正整数N代表火车数量,0输入描述:有多组测试用例,每一组第一行输入一个正整数N(0输出描述:输出以字典序从小到大排序的火车出站序列号,每个编号以空格隔开,每个输出序列换行,具体见sample。输入例子:31 2 3输出例子:1 2 31 3 22 1 32 3 13 2 1#inclu

2017-06-21 19:40:52 3172

原创 KMP算法思考

参考链接:KMP 算法(1):如何理解 KMP  KMP算法详解//// kmp.cpp// algorithm//// Created by soybeanmilk on 2017/6/11.// Copyright © 2017年 soybeanmilk. All rights reserved.//#include #include using names

2017-06-12 00:49:58 264

原创 xcode8 疯狂ios讲义 连连看小游戏

在照着《疯狂ios讲义》的源码写连连看小游戏游戏时,写完发现界面跟原程序不一样,而且View.bottom = Superview.Bottom以及View.top = Superview.Top设置不了,拖动时只能设置成Top Layout Guide的bottom与top。解决办法:1、对于界面不对,需要删除LaunchScreen.storyboard,以及在Info.plist里删

2017-05-29 22:34:53 1232

concurrent 摘自guava concurrent

这个工程是为了学习guava concurrent中的AbstractFuture而建立的,里面有可以运行的例子,再配合我的博客:https://blog.csdn.net/o1101574955/article/details/82889851,可以看明白guava concurrent的基本设计思路。

2018-09-28

graph cut matlab

graph cut matlab 代码 可以运行 能直观看到结果。下载觉不会后悔的。 对理解和使用matlab 函数都有帮助

2017-11-10

achartengine-1.1.0-0.jar

achartengine-1.1.0.jar 用于在android上绘制曲线图和趋势图 它功能强大,支持散点图、折线图、饼图、气泡图、柱状图、短棒图、仪表图等多种图表

2017-10-30

《淘宝技术这十年》完整版 带批注.pdf

《淘宝技术这十年》是由淘宝子柳写的,是一本非常好的关于淘宝、阿里技术的书籍。该书的所有权归子柳所有,同时希望大家购买正版书籍进行学习和阅读。希望对你有所帮助,确实是本好书啊~ 该书目录如下: 第一部分 淘宝技术发展 引言:光棍节的狂欢 个人网站 第二部分 淘宝技术发展 Java时代 创造技术 第三部分 淘宝技术发展 分布式时代 中间件 Session框架 开放平台 第四部分 我在淘宝这八年

2017-10-16

Understanding the Linux Virtual Memory Manager

This book gives a detailed tour of the Linux VM as implemented in 2.4.22 and gives a solid introduction of what to expect in 2.6. As well as discussing the implementation, the theory that Linux VM is

2017-10-14

Netty.in.Action.2015.12.pdf

Netty是一款用于创建高性能网络应用程序的高级框架。在第一部分,我们将深入地探究它的能力,并且在3个主要的方面进行示例: 使用Netty构建应用程序,你不必是一名网络编程专家; 使用Netty比直接使用底层的Java API容易得多; Netty推崇良好的设计实践,例如,将你的应用程序逻辑和网络层解耦。 在第1章中,我们将首先小结Java网络编程的演化过程。在我们回顾了异步通信和事件驱动的处理的基本概念之后,我们将首先看一看Netty的核心组件。在第2章中,你将能够构建自己的第一款基于Netty的应用程序!在第3章中,你将开启对于Netty的细致探究之旅,从它的核心网络协议(第4章)以及数据处理层(第5章和第6章)到它的并发模型(第7章)。 我们将把所有的这些细节组合在一起,对第一部分进行总结。你将看到:如何在运行时配置基于Netty的应用程序的各个组件,以使它们协同工作(第8章),Netty是如何帮助你测试你的应用程序的(第9章)。

2017-09-03

用sbt构造好的Intellij版的spark工程

sbt构造spark项目实在是太慢了,终于构造好了,拿出来和大家分享,直接导入到intellij里就可以研究spark了,定义跳转非常方便。基于当前最新版本的spark构造的工程。

2016-07-23

pyspark_nltk数据和代码

用pyspark+nltk处理文本数据

2016-06-03

c语言百例 cpp文件

c语言编程例子,例如利用指针计算时间差,结果返回到主函数 int * jisuan(int a,int b,int c,int d,int e,int f,int g,int h) { int hour1,hour2,minu1,minu2,hour_diff,minu_diff; //算时间差没必要换算成分钟数,只需要小时数相减,分钟数相减即可 int result[4]; hour1=a*10+b; hour2=e*10+f; if(hour1<=hour2) hour_diff=hour2-hour1; else hour_diff=hour1-hour2; minu1=c*10+d; minu2=g*10+h; if(minu1<=minu2) minu_diff=minu2-minu1; else hour_diff=hour_diff-1; minu_diff=60-(minu1-minu2); result[0]=hour_diff/10; result[1]=hour_diff; result[2]=minu_diff/10; result[3]=minu_diff; return(result); }

2012-01-05

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

TA关注的人

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