自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 西游记杂录-开篇

西游记中描绘天地万物初生的时间表如图.一元为1209600岁,分为12会,每会10800岁,每岁365周天,每周天12时

2019-06-01 23:12:54 240 1

原创 Lucene 源码分析集------- Query

1. 原子query2.需要重写rewrite

2019-05-27 20:00:00 244

原创 Lucene 源码分析集------- SmallDouble

SmallDouble 提供了一种压缩方案,将小浮点数压缩到8bit.uint8_t SmallDouble::doubleToByte(double f) { if (f < 0.0) { // round negatives up to zero f = 0.0; } if (f == 0.0) { // zero is a special...

2019-05-25 16:06:08 193

原创 Lucene 源码分析集------- Random

生成伪随机数的接口Random::Random() { this->seed = (int64_t)MiscUtils::currentTimeMillis();}Random::Random(int64_t seed) { this->seed = seed;}Random::~Random() {}void Random::setSeed(i...

2019-05-25 15:53:31 322

原创 Lucene 源码分析集------- FileUtils

封装了一些文件操作的接口,使用的是boost库里面的文件操作,封装的好处是以后即使不用boost库也不至于影响使用者。namespace FileUtils {/// Return true if given file or directory exists.LPPAPI bool fileExists(const String& path);/// Return file...

2019-05-25 15:49:56 170

原创 Lucene 源码分析集------- DocIdBitSet

DocIdBitSet提供基本的数据,以及构造一个DocIdSetIterator 来供外界访问自己。DocId存储在BitSet中的dynamic_bitset中,使用find_next来找到下一个bit为1的doc,也就是存在的doc。这种结构适合于只存储doc id的情形。如果要存储当前分词在本doc中的文本分,这个结构就不适合。/// Simple DocIdSet and ...

2019-05-25 15:38:56 281

原创 Lucene 源码分析集------- StringUtils

StringUtils主要提供编码类型转换,字符串转整型,浮点型等接口class LPPAPI StringUtils {public: /// Maximum length of UTF encoding. static const int32_t MAX_ENCODING_UTF8_SIZE; /// Default character radix. ...

2019-05-25 14:54:27 116

原创 Lucene 源码分析集------- SyncLock

通用的同步锁/// Utility class to support locking via a mutex.class LPPAPI Synchronize {public: Synchronize(); virtual ~Synchronize();protected: boost::recursive_timed_mutex mutexSynchroni...

2019-05-25 14:45:22 124

原创 Lucene 源码分析集------- ThreadPool

线程池实现Future负责具体操作,threadpool负责整体管理和及接口,异步化管理。class Future : public LuceneObject {public: virtual ~Future();protected: boost::any value;public: void set(const boost::any& value)...

2019-05-25 13:56:27 127

原创 Lucene 源码分析集------- Base64

mark下base64的封装源码const String Base64::BASE64_CHARS = L"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";Base64::~Base64() {}String Base64::encode(ByteArray bytes) { return...

2019-05-25 12:53:24 148

原创 Lucene 源码分析集------- BitSet & OpenBitSet

这里面主要给boost库里面的dynamic_bitset提供一层封装,主要是区间处理的时候,还有越界时resize,判断是否相等等class LPPAPI BitSet : public LuceneObject {public: BitSet(uint32_t size = 0); virtual ~BitSet(); LUCENE_CLASS(BitSet)...

2019-05-25 12:29:21 257

原创 Lucene 源码分析集------- BitUtil

const uint8_t BitUtil::ntzTable[] = { 8, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0, 4, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0, 5, 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0, 4, 0, 1, ...

2019-05-25 12:12:34 173

原创 一个题库网站

https://leetcode-cn.com/problemset/all/

2018-11-13 08:10:45 2167

原创 块存储&文件存储&对象存储

1. 块存储主要给虚拟机用的,包括数据库,将裸磁盘空间映射给主机使用。 创建虚拟机的时候create image,其实是直接将一块磁盘的一部分空间映射出来当做虚拟机的使用空间。 优点在于速度块,缺点在于共享。 2. 文件存储支持标准的POSIX接口,传统的FTP即是。优点在于共享方便,但是速度慢。 3. 对象存储综合1,2的优点。K、V模式。但是需要部署管理软件。支持p...

2018-07-26 16:31:18 410

原创 big integer

#include "vector.h"using namespace std;struct BigInteger{static const int BASE = 100000000;static const int WIDTH = 8;vector&lt;int&gt; s;BigInteger(long long num = 0){*this = num;}BigIntege...

2018-07-09 22:28:25 170

原创 安装ubuntu到移动硬盘记录

1. 将iso文件写入安装到u盘2.在windows环境下将移动硬盘分区,并且分别创建/ 、/boot、/home、swap、/tmp等分区. 并且一定要用分区助手设置4k对齐3.u盘启动后进入ubuntu选择install ubuntu,做相应选择很多安装失败原因出在第二步....

2018-06-16 22:29:41 535

转载 除法

任何数都可以表示表示成二进制,假设商是q,则q可以表示成q=2^k1 + 2^k2 + ... + 2^kn (设k1 &gt; k2 &gt; ... &gt; kn) = a/b,故 a = bq=b(2^k1 + 2^k2 + ... + 2^kn)。改进试商每次让a - b&lt;&lt;k,直到a - b &lt;&lt; k &gt; 0且a - b &lt;&lt; (k+1) &l...

2018-06-03 15:32:40 222

转载 排列1-9为3个3位数,使得结果为1:2:3

题目要求:用1,2,3,...,9组成3个三位数abc,def,ghi,每个数字恰好使用一次,要求abc:def:ghi=1:2:3。按照“abc def ghi”的格式输出所有解。思路:这道题不难,关键在于怎么判断是否每个数字使用一次。由于自己没想出好的办法,看到别人好的思路就想mark下来。1. 要求1~9这9个数字都使用且只能使用一次,所以想到用循环,对每3个三位数组成进行判断2. 循环初始...

2018-05-26 22:12:46 2880 1

转载 printf特殊用法

特殊用法 对于m.n的格式还可以用如下方法表示(例)char ch[20];printf("%-*.*s\n",m,n,ch);备注:“-”:表示左对齐“m”:表示字符串总宽度“n”:表示输出个数这种用法的好处是可以在语句之外对参数m和n赋值,从而控制输出格式。例子:#define        WID_DST(af)       26        /* width of destination...

2018-05-26 21:56:55 453

转载 转: 浮点陷阱

deadloop:double i;  for(i = 0; i != 10; i += 0.1)      printf("%.1lf\n", i); 同时:0.1+0.1+0.1 != 0.3正确写法是for(i = 0.0; i -10 &lt; 0.0; i += 0.1) 实际上,计算机中的所有数据都用二进制表示,包括浮点数。这就导致某些浮点数不能用二进制精确表示,例如0.1(这很容易理...

2018-05-26 13:18:04 302

转载 RAFT协议介绍【收藏】

http://thesecretlivesofdata.com/raft/官网:https://raft.github.io/论文:https://raft.github.io/raft.pdf

2018-05-01 20:05:08 199

空空如也

空空如也

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

TA关注的人

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