自定义博客皮肤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)
  • 收藏
  • 关注

转载 加权引用计数(weighted reference counting)

Wikipedia上介绍了一种叫weighted reference counting的方法。大概思路是不一定要建一个引用就把引用计数加1,也可以是建一个引用就把引用计数加n,只要销毁引用的时候也减相同的n就能保证语义一致。这个n就是引用权重,引用计数其实是所有引用权重的总和。具体做法是创建...

2019-04-17 12:43:00 647

转载 AVL树

AVL树是一种平衡二叉树。名称来自它的发明者G.M. Adelson-Velsky和E.M. Landis。实验表明它和复杂的红黑树性能相当插入操作当插入后出现不平衡,要进行调整平衡。调整平衡从插入位置的叶结点一直回溯的根结点。分为LL,RR,LR,RL四种型,每种型进行相应的旋转。删...

2018-08-13 19:03:00 172

转载 新词发现

所谓新词,需要做到词内凝固度足够高,左右相邻字自由度足够高。我们使用点互信息(pointwise mutual information)来衡量凝固度,使用信息熵来衡量自由度。互信息PMI = p(x,y) / (p(x)p(y))互信息其实就是对X和Y的所有可能的取值情况的点互信息PM...

2018-07-27 11:35:00 267

转载 查看硬件配置信息

查看CPU信息lscpucat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c查看内存信息grep MemTotal /proc/meminfocat /proc/meminfo查看操作系统uname -a cat /et...

2018-07-27 11:19:00 181

转载 2-SAT问题

问题定义SAT(satisfiability / 适定性问题):对于一个合取范式,求解使得该合取范式的值为1。a and (b or c) and (d or e or f) and ...2-SAT:该合取范式的每一个子式只包含两个变量。(a or b) and (c or d) a...

2018-07-27 11:17:00 279

转载 离散程度

方差简化公式平均差平均差是总体所有单位与其算术平均数的离差绝对值的算术平均数四分位差四分位差(quartile deviation),它是上四分位数(Q3,即位于75%)与下四分位数(Q1,即位于25%)的差。 ...

2018-03-27 14:37:00 1161

转载 C++面试题收集

编程语言方面引用和指针区别?(效率方面和功能方面)增加方法对导致类对象大小增加吗?模板为什么需要写在头文件?各种cast及其区别?类默认生产那些函数?如何防止或者检测内存泄漏?智能指针如何解决循环引用?inline函数在那些情况下不会内联?delete[]做了那些事?Jav...

2018-03-24 16:13:00 80

转载 最短路径算法Viterbi vs Dijkstra

Viterbi和Dijkstra算法看起来比较像,两者的区别:Dijkstra算法适应范围更广。Viterbi算法用在特殊的有向无环图中,而Dijkstra算法可以用在大部分图结构中(有向无向、有环无环都可以)。搜索过程类似,但搜索顺序不同。Dijkstra每步选择最短路的结点处进...

2018-03-06 11:10:00 1069

转载 Trie树的各种实现

前缀匹配在自然语言处理中常见的需求。假设有一个词典和一个句子,找出句子开始位置处匹配的词典中的单词。Hash标记法使用一个HashMap,放入词典中词的同时放入前缀词。例如当插入词典中的hello这个词时,同时插入hello的前缀词。map["hello"] = 1map["hell...

2018-03-05 15:04:00 259

转载 自动同步文件到远程服务器

我要实现的是在本地目录修改文件,自动同步更新到服务端去。如果我们不习惯使用vim来在远程写代码,可以在本地用喜欢的IDE写,然后自动同步到远程进行编译和调试(别问我为什么要到远程去编译调试,C++带的.so文件已经把编译器版本锁定了)。当然可以用git来同步,但是提交什么的有点麻烦。更改...

2017-12-07 15:23:00 1312

转载 可恶的Python

1. 缺乏一致性set添加元素是set.add, list添加元素是list.appendlist删除元素是list.remove, dict删除元素是del map[key]len(x)而不是面向对象的x.len()2. 变量赋值和定义相同假如我这样写is_destroy =...

2017-11-20 21:44:00 104

转载 编程语言虚拟机(五)

值类型在Java和C#中值类型在分配给Obj或者Int?的时候需要boxing。影响性能和增加垃圾收集压力。Go语言中有指针,不需要boxing。这样会导致对象const变得复杂,指针不能引用栈上的值类型变量。Swift语言提供3个字大小的内存空间,可以用来存储小的值类型或者指针类型。...

2017-08-10 17:12:00 199

转载 同步阻塞IO

同步同步和异步关注的是消息通信机制。所谓同步,一个任务的完成需要依赖另外一个任务时,只有等待被依赖的任务完成后,依赖的任务才能算完成,这是一种可靠的任务序列。异步的概念和同步相对。当一个异步过程调用发出后,调用者不能立刻得到结果。实际处理这个调用的部件在完成后,通过状态、通知和回调来通知...

2017-04-24 19:50:00 109

转载 WIFI定位算法

网络定位指通过周边wifi列表、基站列表、IP地址等信息确定用户位置的过程。我们采集的训练数据是每个GPS坐标位置和对应的Wifi和基站列表。其中每个Wifi和基站有唯一的Mac地址作为ID和信号强度。有三种定位方法:均值法首先估计一个wifi的中心点位置,可以通过每条记录的wifi...

2017-04-18 11:16:00 1751

转载 互信息、相对熵

信息熵互信息(Mulual information)条件熵交叉熵H(p,q)=∑ p(x)∗log( 1/q(i) )联合熵H(X,Y)=−∑ p(x,y) ln p(x,y)相对熵D(p||q)=H(p,q)-H(p) ...

2017-03-27 10:46:00 215

转载 密度函数、分布律、分布函数

密度函数、分布律、分布函数,傻傻分不清。密度函数连续随机变量:概率密度函数(PDF),简称密度函数。在某一区间上的积分来刻画随机变量落在这个区间中的概率。分布律离散型随机变量:概率质量函数(PMF)称作离散型随机变量的分布律。相当于密度函数。分布函数累积分布函数(CDF),简称分布...

2017-03-27 10:11:00 10761

转载 相关系数与余弦距离

相关系数协方差是描述二维随机变量两个分量间相互关联程度的一个特征数,如果将协方差相应标准化变量就得到相关系数。余弦相似度两个公式一样,其实在数学上是等价的。 转载于:https...

2017-03-22 19:09:00 783

转载 高程

沿铅垂线方向到大地水准面的距离称为绝对高程或者海拔,简称高程正高:大地水准面正常高:似大地水准面大地高:参考椭球面某点沿铅垂线方向到绝对基面的距离,称绝对高程。某点沿铅垂线方向到某假定水准基面的距离,称假定高程。高程异常:似大地水准面至 地球椭球面的高度。 ...

2017-03-22 17:50:00 215

转载 XP(极限编程)

沟通传递信息最有效的方法是面对面的交谈。坐在一起,信息化工作场所。文档不是为了应付检查,而是为了交流。有时候公司越大形式主义越严重。让正确的人做正确的事。真实客户参与。工作只为最近的事详细计划,发生时间越远的事情你的计划越没用。短的工作周期,持续交付可工作的软件。客户价值与程序员...

2017-03-22 17:35:00 176

转载 样本估计

为什么样本方差(sample variance)的分母是 n-1https://www.zhihu.com/question/20099757矩估计最简单的矩估计法是用一阶样本原点矩估计总体期望,而用二阶样本中心矩估计总体方差。最大似然估计最合理的参数估计量应该是使得从模型中抽取该n...

2017-03-22 17:27:00 466

转载 向量 数量积vs向量积

向量 数量积vs向量积 数量积 向量积 别称 内积、点积 外积、叉积 运算结果 结果为标量 结果为向量 ...

2017-03-20 16:44:00 221

转载 服务自动重启

Web服务需要在crash和系统启动的时候自动重启简单的奔溃重启while true;do echo 'start run' ./myapp; sleep 3sdone然后使用nohup运行这个脚本即可。但是这样直接运行不能保证系统重启的时候自动启动。Up...

2017-03-15 18:00:00 158

转载 新一代的C++构建工具

Why fmake我为什么要实现一个新的C++构建工具呢?GNU Make的缺陷在于他是面向机器的而不是面向人类的。C++文件之间的依赖关系通过include本身是能自动得出的,但却要人手动维护。后来我找了自动扫描cpp文件的makefile模板,但毕竟不是通用编程语言,实现特殊需求非常...

2017-02-24 16:48:00 629

转载 对分布式一致性算法的理解

Raft先选出leader,后面的日志复制由leader全权负责。日志冲突时强制以leader为准。Paxos不需要固定Leader,每次prepare阶段的提案相当于在竞选leader,accept阶段发送日志内容。Raft与PaxosRaft要求日志连续,而Paxos则没有这...

2017-02-23 12:42:00 96

转载 编程语言虚拟机(四)

基于栈字节码转为基于寄存器我们都知道Java字节码是基于栈的,但是LLVM是基于寄存器的。所以想要编译为LLVM运行,需要先把基于栈的字节码转为基于寄存器结构。这个地方比较麻烦,我采用了笨的办法,是这样做的:找出跳转开始和跳转目标位置,按照这些位置把代码分为多个基本块。将基本块按照跳...

2017-02-16 16:27:00 121

转载 OpenGL文字渲染

基本思路通过FreeType库渲染单个文字的单通道纹理。多个文字纹理打包在一个纹理集中。结果像这样:纹理打包算法插入新字符到纹理1.1 判断纹理是否存在,如果存在则返回。1.2 在最后一个纹理缓冲区的可用矩形区域逐个调用方法2,直到插入成功。1.3 如果没有插入成功...

2017-02-15 19:38:00 587

转载 B+Tree实现

B+Tree是一种多叉树数据结构,主要用于数据库索引。一个B+Tree对应的结点内容如下ptr0,key0,ptr1,key1,ptr2,vkey2 | keyBuf0,keyBuf1,vkeyBuf2结点内容安装key来排序,搜索时使用二分查找。结点数据结构为了能支持字符串这种变...

2017-01-11 19:35:00 215

转载 Makefile模板

Makefile文件模板,来自stackoverflow。自动搜索.cpp文件,分离到单独目录生成。#Compiler and LinkerCC := g++#The Target Binary ProgramTARGET := myapp#The ...

2016-12-19 18:21:00 66

转载 undo/redo日志规则

undo log规则U1:如果事务T改变了数据库元素X,那么形如<T,X,v>的日志记录必须在X的新值写到磁盘之前写到磁盘中U2:如果事务已提交,则其COMMIT日志记录必须在事务改变的所有数据库元素先写到磁盘之后写到磁盘中,但应尽快。redo log规则R1:在修改磁盘上...

2016-11-10 11:49:00 341

转载 编程语言虚拟机(三)

垃圾回收的时候还是有几个问题需要解决。Stop The World问题之前为了简单期间直接用锁来代替。现在修改为在每个循环回跳的时候检查安全点,来暂停所有线程。有个问题就是在遇到阻塞的时候,例如阻塞到网络IO操作,或者sleep等操作的时候需要特殊处理。在阻塞的期间虽然没有到达safe ...

2016-09-26 12:47:00 140

转载 解压tar.xz文件

今天下载了个tar.xz格式的文件,一双击解压变成了tar.xz.cpgz文件,再一双击有变成tar.xz文件。反复很多次,无限循环,真是郁闷。在网上搜,说是有可能文件坏了,重新下载的一边还是不行。用brew安装了个xz才解决问题:brew install xzxz -d /Users...

2016-09-26 12:23:00 417

转载 C++11特性

虽然C++11出来很长时间了,我才开始学习。花了半天时间看完了wikipedia,总结如下。Rvalue references and move constructorsconstexprtrivial PODstd::initializer_listautorange-base...

2016-09-08 11:39:00 74

转载 开源JVM虚拟机

收集的几个JVM以及.NET现实项目,供学习用。Hotspothttp://hg.openjdk.java.net/官方的JVMParparVMhttps://github.com/codenameone/CodenameOne/tree/master/vm将java字节码翻译为C...

2016-08-26 21:52:00 464

转载 编译Android源码的坑

完整的过程见这里http://source.android.com/source/index.html我只是记录一下中间可能遇到的坑。我用的环境是ubuntu 16.04,源码用的Android 6.0.1, 设备是Nexus 5X。JDK安装好像编译Android6.0需要的是JDK7...

2016-08-22 18:41:00 252

转载 值类型与不可变类型

看到一个叫王垠的人写了一篇文章,叫做《Java 有值类型吗?》。我发现他的思路和我之前的两个观点有点像。C语言只有值类型我以前经常说C语言参数只有一种传递方式,就是值传递。因为指针也是值呀,指针是一个字宽度的地址值,相当于一个整形long。指针传递其实就是把这个地址值拷贝一份而已。这个问题...

2016-08-20 18:12:00 680

转载 Android插件化动态加载原理(四)

有人问我是否支持加载插件中的资源,这个当然是支持的。实现也比较简单。加载资源文件另外一个必须解决的问题是加载插件中的资源,包括布局文件和图片等。这个需要调用系统的AssetManager来完成,addAssetPath是个私有方法,所以使用反射来调用。示例代码如下:AssetManage...

2016-08-20 17:23:00 84

转载 Shell查找与拷贝

查找按名称查找文件是find . -name "*.java"但是如果想要在文件内容里面查找,可以这样find ./ -type f -name "*.java" -exec grep -l "INSTALL_LOCATION_PROVIDER" {} \;拷贝拷贝文件夹是这...

2016-08-18 18:11:00 386

转载 对JavaScript继承机制的猜想

感觉与java的继承相比,JavaScript的继承很有意思。function Person(me){ me.name="yjd"; me.age=23; me.myConstructor=Person; return me;}function New(C){ var me;...

2016-07-21 18:58:00 62

转载 shell自动输入用户名密码

expect能实现自动输入用户名密码,但问题是,为什么是必须在单独文件里面呢<!-- lang: shell -->#!/usr/bin/expect -fspawn git pullexpect "ername for 'http://***:8091':"send ...

2016-07-21 18:53:00 2473

转载 Java反射实现URL路由

Java反射实现URL路由URL路由所谓URL路由,指的是把URL映射到某一个函数。URL不是应该对应到某一个文件吗,例如HTML/JSP或者Velocity模板。但是为了实现代码逻辑和视图的分离,我们把URL对应到一个java方法调用上,这个可能就是传说中的MVC模式。传统方式你可...

2016-06-03 18:22:00 537

空空如也

空空如也

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

TA关注的人

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