自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(594)
  • 资源 (5)
  • 收藏
  • 关注

原创 常用几种距离的标识

曼哈顿距离(Manhattan Distance)顾名思义,在曼哈顿街区要从一个十字路口开车到另一个十字路口,驾驶距离显然不是两点间的直线距离。这个实际驾驶距离就是“曼哈顿距离”。曼哈顿距离也称为“城市街区距离”(City Block distance)。二维平面两点a(x1,y1)与b(x2,y2)间的曼哈顿距离: d12=|x1−x2|+|y1−y2|d12=|x1−x2|+|...

2018-06-07 16:03:15 15152 1

转载 微信自研生产级paxos类库PhxPaxos实现原理介绍

转载自:微信后台团队 公众号 连接地址:https://mp.weixin.qq.com/s?__biz=MzI4NDMyNTU2Mw==&mid=2247483695&idx=1&sn=91ea422913fc62579e020e941d1d059e&scene=21#wechat_redirect前言 本文是一篇无需任何分布式以及paxo...

2018-06-05 10:59:58 922

原创 PhxPaxos算法逻辑部分(1)-先导篇

之前的文章介绍了phxpaxos理论部分和网络部分,但是如何真正的实现paxos还没有说明。 下面通过:1。网络部分 2.官方带例子 导入我们要讲的paxos逻辑部分。网络部分先导部分根据之前介绍的网络部分,在这里查找网络接收到的消息到Paxos算法部分是如何处理的。 废话不多少,上代码。 文件src/communicate/network.cpp int NetWork :...

2018-06-05 10:41:51 986

转载 Paxos理论介绍(4): 动态成员变更

转载自:微信后台团队公众号 链接地址:https://mp.weixin.qq.com/s?__biz=MzI4NDMyNTU2Mw==&mid=2247483807&idx=1&sn=aafdc2103087fd82224075584d00cd4a&chksm=ebfc624bdc8beb5d979d12f23cd477ccb6347c7ddd9decb8f35...

2018-06-04 13:41:19 645

转载 Paxos理论介绍(3): Master选举

转载自: 微信后台公众号 连接:https://mp.weixin.qq.com/s?__biz=MzI4NDMyNTU2Mw==&mid=2247483801&idx=1&sn=bcb6229270dccfdd5130db4d4ab34d13&chksm=ebfc624ddc8beb5b55c999b7215f79414f16e636acbe374f6630dd...

2018-06-04 11:24:23 774

转载 Paxos理论介绍(2): Multi-Paxos与Leader

转载自 微信后台团队公众号,文章地址:https://mp.weixin.qq.com/s?__biz=MzI4NDMyNTU2Mw==&mid=2247483798&idx=1&sn=42dd222ae255b13f1f67cd9e6d3f3dc0&scene=21#wechat_redirect前文介绍了朴素Paxos理论,理解朴素Paxos是理解本文的前提...

2018-06-04 10:32:05 1603

转载 C++11读写锁

网络摘抄的读写锁代码,先保存一下,之后抽时间验证一下,看代码应该是没有问题的。 摘抄自:https://blog.csdn.net/mymodian9612/article/details/52794980 #ifndef __WRITE_FIRST_RW_LOCK_H #define __WRITE_FIRST_RW_LOCK_H #include <...

2018-06-01 09:29:40 12699 1

转载 Paxos理论介绍(1)

本文转载自微信后台团队文章,连接地址 https://mp.weixin.qq.com/s/eeJXS5rBA9mXpSJaTNjF-Q这篇文章摘取部分我在微信内部关于Paxos的分享PPT,通过注解的方式尝试与大家说明白朴素Paxos的理论证明。为何要重点说朴素的Paxos?个人认为这个才是Paxos的精髓所在,也是所有Paxos相关算法的基石所在。另外本文将着重讲解Paxos的算法推导...

2018-05-31 15:11:09 1087

原创 Phxpaxos网络部分(4) —— TCP收发消息

TCP收消息TCP收消息相关的类有TcpIOThread.TcpAcceptor.TcpRead 三个类。相互间的关系是:TcpIOThread初始化TcpRead和TcpAcceptor,并将后两者关联起来。 这样Acceptor接收到的连接直接放到TcpRead 中读取数据。class TcpIOThread {public: TcpIOThread(NetWork *...

2018-05-30 10:23:57 428

原创 Phxpaxos网络部分(3) —— TCP事件循环

上一部份介绍了TCP模块大略的类构成。在查看相关的TcpRead/TcpWrite/TcpAcceptor的过程中发现,都包含以个EventLoop类。这是事件处理主循环类。在介绍其他组成部分前,我们先分析一下此类。代码在/src/communicate/tcp/ecent_loop.h/cpp 文件中。顺带手介绍一下里面的事件类Event。先看一下Event类(含有纯虚函数)肯定要做为父类进...

2018-05-28 15:03:06 450

原创 Phxpaxos网络部分(2) —— TCP网络整体概略

整个TCP网络部分代码全被封装在TcpIOThread中。通过将NetWork 指针传递进来将此部分与整个业务逻辑关联起来class TcpIOThread {public: TcpIOThread(NetWork * poNetWork); ~TcpIOThread(); int Init(const std::string & sListenIp, c...

2018-05-28 10:32:42 472

原创 Phxpaxos网络部分(1) —— UDP网络分析

UDP相关逻辑在udp.h/cpp文件中。发送直接上代码class UDPSend : public Thread //继承自Thread,线程相关信息略{public: UDPSend(); ~UDPSend(); //释放资源 int Init(); //初始化socket void run(); void Stop();...

2018-05-28 10:13:38 514

原创 Phxpaxos网络部分概述

整体描述网络部分以接口形式提供,接口定义文件为include/phxpaxos/network.h,用户只需要根据此头文件实现相应的功能即可替代其网络部分。其中主要接口三个,分别是发送TCP消息、发送UDP消息,接收消息。class NetWork{public: NetWork(); virtual ~NetWork() {} //Network m...

2018-05-25 15:57:17 525

转载 分布式论文

作者:廖君链接:https://www.zhihu.com/question/19868791/answer/88873783来源:知乎分布式系统(Distributed System)资料《Reconfigurable Distributed Storage for Dynamic Networks》介绍:这是一篇介绍在动态网络里面实现分布式系统重构的paper.论文

2017-11-11 11:02:20 1870

转载 Understanding HBase and BigTable

The hardest part about learning Hbase (the open source implementation of Google’s BigTable), is just wrapping your mind around the concept of what it actually is.I find it rather unfortunate that these

2017-11-11 10:43:34 658

转载 C++ typedef typename 作用

C typedef typename 作用vectorsize_type为什么使用typename关键字总结C++ typedef typename 作用C++的一些语法让人看着费解,其中就有:typedef typename std::vector::size_type size_type;1详见《C++ Primer》(第五版)P584 有些不懂的语

2017-10-25 08:38:12 553

转载 主成分析PCA

转载自:http://blog.csdn.net/itplus/article/details/11451327

2017-09-23 14:17:34 544

转载 协方差矩阵详谈

转载自:http://blog.csdn.net/itplus/article/details/11452743文章下载连接:http://download.csdn.net/download/peghoty/6478675

2017-09-23 13:42:39 2916

转载 牛顿法与拟牛顿法

转载自:http://blog.csdn.net/itplus/article/details/21896453

2017-09-13 14:29:41 443

转载 坐标上升算法

转载自:http://blog.csdn.net/nupt123456789/article/details/8349488坐标上升算法(Coordinate Ascent)及C++编程实现 编程实现: #include <iostream> using namespace std; #define f(x1,x2,x3) (-x1*x1-2*x2*x2-3*

2017-09-13 14:01:12 944

转载 约束优化方法之拉格朗日乘子法与KKT条件

引言本篇文章将详解带有约束条件的最优化问题,约束条件分为等式约束与不等式约束,对于等式约束的优化问题,可以直接应用拉格朗日乘子法去求取最优值;对于含有不等式约束的优化问题,可以转化为在满足 KKT 约束条件下应用拉格朗日乘子法求解。拉格朗日求得的并不一定是最优解,只有在凸优化的情况下,才能保证得到的是最优解,所以本文称拉格朗日乘子法得到的为可行解,其实就是局部极小值,接下来从无约束优化开始一一讲解。

2017-09-12 09:31:17 922 1

转载 随机梯度下降与批梯度下降

装载自:http://www.cnblogs.com/rcfeng/p/3958926.html具体的理论公式见吴恩达老师斯坦福公开课讲义note1。通过代码理解1.随机梯度下降算法的python的实现: # coding=utf-8#!/usr/bin/python'''Created on 2014年9月6日 @author: Ryan C. F.'''#T

2017-08-23 09:42:55 657

转载 Linux进程同步之记录锁(fcntl)

转载自:http://www.cnblogs.com/dyllove98/archive/2013/06/28/3161371.html记录锁相当于线程同步中读写锁的一种扩展类型,可以用来对有亲缘或无亲缘关系的进程进行文件读与写的同步,通过fcntl函数来执行上锁操作。尽管读写锁也可以通过在共享内存区来进行进程的同步,但是fcntl记录上锁往往更容易使用,且效率更高。记录锁的功

2017-08-23 09:36:01 440

转载 虚数的意义

文章转载自:http://www.ruanyifeng.com/blog/2012/09/imaginary_number.html 作者:阮一峰 虚数就是-1的平方根。可是,什么数的平方等于-1呢?计算器直接显示出错! 直到今天,我也没有搞懂。谁能解释,虚数到底是什么? 它有什么用? 帖子的下面,很多人给出了自己的解释,还推荐了一篇非常棒的文章《虚数的图解》。我读后恍然大悟,醍

2017-08-14 10:33:57 439

转载 Markdown 数学公式

转载自:http://blog.csdn.net/zdk930519/article/details/54137476简要介绍因为要使用markdown编辑数学公式然后在文档、网页中使用,但是自己总是记不住这么多东西,特别是几天不用,很多都忘记了,因此准备就数学公式的Latex编辑方式做一个整理,以方便自己和读者今后使用。分数,平方 算式markdown

2017-07-31 11:06:58 667

转载 图像几何变换:旋转,缩放,斜切

转载自:http://blog.csdn.net/xiaowei_cqu/article/details/7616044几何变换几何变换可以看成图像中物体(或像素)空间位置改变,或者说是像素的移动。几何运算需要空间变换和灰度级差值两个步骤的算法,像素通过变换映射到新的坐标位置,新的位置可能是在几个像素之间,即不一定为整数坐标。这时就需要灰度级差值将映射的新坐标匹配到输出

2017-07-25 16:26:02 1047

转载 关于齐次坐标的理解(经典)

转载自:http://blog.csdn.net/janestar/article/details/44244849问题:两条平行线可以相交于一点在欧氏几何空间,同一平面的两条平行线不能相交,这是我们都熟悉的一种场景。然而,在透视空间里面,两条平行线可以相交,例如:火车轨道随着我们的视线越来越窄,最后两条平行线在无穷远处交于一点。欧氏空间(或者笛卡尔空间)描述2D/3D几何

2017-07-20 09:35:31 1149

转载 opencv需要学习的知识总结

转载自:http://www.cnblogs.com/opecvschool/p/6293831.html 图像像素操作 - 几何运算-加减乘除 - 逻辑运算-与或非取反 - 像素读写 - 通道混合与调整 - 对比度与亮度调整 图像几何变换 - 插值(zoom in或out) - 旋转(rotate) - 透视变换 - 错切变换 - 翻转

2017-07-19 18:13:56 2806

转载 opencv mat (matrix)数据结构

程序及分析/* * FileName : MatObj.cpp * Author : xiahouzuoxin @163.com * Version : v1.0 * Date : Thu 15 May 2014 09:12:45 PM CST * Brief : * * Copyright (C) MICL,USTB */#include #i

2017-07-19 18:12:48 3600

转载 opencv 大局观

原文:http://blog.chinaunix.NET/uid-8402201-id-2899695.html一、基础操作1. 数据类型 数据结构了解   图像相关:cvArr  cvMat IplImage      数据数组的维数, 与数据的通道数 见P46 (76)2. 常见的矩阵操作熟悉   3. 数据的保存和读取4. 图像

2017-07-19 18:06:53 926

转载 opencv Mat对象与它各种用法

http://www.cnblogs.com/opecvschool/p/6049128.html学习OpenCV大家都会遇到一个对象叫做Mat,此对象非常神奇,支持各种操作。很多初学者因此被搞得头晕脑胀,它各种用法太多太杂,搞得初学者应接不暇,感觉有心无力、无处下手之感。这里我们首先要正本清源,从Mat对象的产生原因说起,然后再把Mat各种神奇用法一一梳理总结。 Mat对象起

2017-07-19 17:42:33 860

转载 OpenCV框架介绍

转载自:http://www.cnblogs.com/opecvschool/p/6040698.html概述OpenCV是一个开放源代码的计算机视觉应用平台,由英特尔公司下属研发中心俄罗斯团队发起该项目,开源BSD证书,OpenCV的目标是实现实时计算机视觉,,是一个跨平台的计算机视觉库。从开发之日起就得到了迅猛发展,获得了众多公司和业界大牛的鼎力支持与贡献,因为是BSD开源许可,因此可

2017-07-19 17:28:43 1771

原创 根据函数名载入库函数(GetProcAddress、dlsym)

根据函数名载入库函数(GetProcAddress、dlsym)不废话上代码:#ifdef WIN32#include <windows.h>typedef HINSTANCE HandleType;#define LoadLib(filename) LoadLibraryA(filename)#define UnLoadLib(handle) FreeLibrary(handle)#def

2017-04-24 14:53:23 3968

原创 window平台下动态库与静态库生成与使用(C++)

window平台下动态库与静态库生成与使用(C++)动态库动态库的生成vs的设置自行百度,废话不多讲,上代码:代码参考:http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=29121609&id=3851844//add.h#pragma once;//该宏完成在dll项目内部使用__declspec(dllexport)导出//在dl

2017-04-24 11:20:01 2014

转载 boost 序列化 多个条数据,文件读取

转载自:http://www.cnblogs.com/cmranger/p/4772149.html序列化可以把对象转化成一个字节流存储或者传输,在需要时再回复成与原始状态一致的等价对象。C++标准没有定义这个功能。boost.serialization以库的形式提供了这个功能,非常强大,可以序列化C++中各种类型,而且简单易用。boost.serialization库必须编译后才能使

2017-04-11 15:30:59 2241

转载 boost 文本和二进制序列化

文本序列化需要对二进制数据进行转换,还要加入分隔符,因此不仅效率低而且耗费更多的空间。写了一个小程序比较一下二者效率相差相差多少,发现还是蛮悬殊的。例子程序中对同一个对象序列化100万次,该对象包含几种常用的数据类型,除了比较速度,还比较二者耗费的空间大小。程序代码如下:#include #include #include #include #include

2017-04-11 14:47:30 2001

转载 boost序列化

程序开发中,序列化是经常需要用到的。像一些相对高级语言,比如Java, C#都已经很好的支持了序列化,那么C++呢?当然一个比较好的选择就是用Boost,这个号称C++准标准库的东西。什么时候需要序列化呢?举个例子,我们定义了一个class,比如:[cpp] view plain copy class CCar  {  public:      void Set

2017-04-11 14:40:55 826

转载 C++ 内存分配(new,operator new)详解

转载自:http://blog.csdn.net/wudaijun/article/details/9273339本文主要讲述C++ new关键字和operator new, placement new之间的种种关联,new的底层实现,以及operator new的重载和一些在内存池,STL中的应用。一. new operator 和 operator newnew o

2017-04-03 12:56:36 377

转载 C++ traits

最近和一个朋友闲聊的时候他对我说一个人对C++的理解很多种境界,朋友不是个喜欢吹牛的人,于是听他细说,觉得很是有道理。想写一篇C++ traits方面的文章已经有一段时间了,但是说实话traits这项技术确实有些晦涩,很担心写完了达不到期望的效果,于是每每试图以简炼的文字表达,慢慢的就等到了今天。先说说我为什么专门对这项技术写一篇文章吧。记得当时在看STL/boost代码的时候经常遇到tr

2017-03-31 19:58:45 831

转载 shared_from_this bad_weak_ptr的原因

前几天解了一个bug,表象是调用shared_from_this的时候就跑出bad_weak_ptr异常,类A明明是继承自boost::enable_shared_from_this的,一时搞不明白为什么,后来搜了下出现“bad_weak_ptr异常”可能的原因才找到问题所在:创建类A的对象的时候没有用智能指针包裹,而是直接new的裸指针。【引申】enable_from_t

2017-03-24 16:55:40 4917

Head First设计模式

Head First 设计模式,影印版,带目录

2016-05-22

Qt_Creator_绝对入门.pdf

Qt 是一个跨平台的 C++ 图形用户界面库 此教程简单易懂

2012-08-21

at89c51英文数据手册

at89c51单片机用户数据手册,原版英文,单片机

2012-05-20

at89c51数据手册

at89c51中文数据手册,参考更易于学习51单片机

2012-05-20

空空如也

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

TA关注的人

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