teaspring的技术专栏

思考,为了递归或者迭代

排序:
默认
按更新时间
按访问量

[以太坊源代码分析] VI. 基于p2p的底层通信(上篇)

以太坊中客户端之间的底层通信天然适用p2p通信协议,本篇主要介绍了以太坊中有关p2p通信核心模块ProtocolManager的一些主要流程逻辑,以及p2p通信协议族的一些架构设计。

2017-11-06 10:20:24

阅读数:5568

评论数:27

[以太坊源代码分析] V. 从钱包到客户端

本文从以太坊中管理账户信息的代码包pkg accounts开始,详细介绍了以太坊内部如何管理账户和数字签名所用公钥密钥的机制;然后自底向上,介绍了客户端程序的核心模块eth.Ethereum,它提供完备的全节点功能。

2017-11-05 20:36:44

阅读数:17511

评论数:8

[以太坊源代码分析]III. 挖矿和共识算法的奥秘

作为本系列的第三篇,这篇文章介绍了以太坊中如何"挖矿"产生一个新区块的完整过程,以及Ethash(PoW)和Clique(PoA)两种不同共识算法的实现方案;同时对于各处代码实现中的精巧设计,也作了较详细的讲解。

2017-09-21 11:46:33

阅读数:7486

评论数:1

[以太坊源代码分析] I.区块和交易,合约和虚拟机

打算写一个系列文章,基于源代码分析下以太坊(Ethereum)的基本架构,所用算法、协议等。这是第一篇,介绍了区块,交易等基本概念,并从执行交易的角度,简单介绍了交易同合约的设计,执行合约的完整流程,以太坊虚拟机的指令集设计,以及用到的数字签名算法等。

2017-09-08 14:23:56

阅读数:29203

评论数:11

[以太坊源代码分析] IV. 椭圆曲线密码学和以太坊中的椭圆曲线数字签名算法应用

本文从椭圆曲线加密学的基础-点倍积开始讲起,完整介绍了椭圆曲线数字签名算法的理论基础和实现算法,以及以太坊中是如何调用椭圆曲线数字签名算法进行数字签名操作的。

2017-09-04 10:39:24

阅读数:4195

评论数:3

[Bluetooth]: android 平台上BLE连接流程之优化方案

文章提供了一种设计良好的蓝牙连接(重连)的流程逻辑,可以极大的提高Android平台上蓝牙设备的连接成功率。

2017-08-16 00:08:52

阅读数:2268

评论数:2

[以太坊源代码分析] II. 数据的呈现和组织,缓存和更新

从代码实现和架构设计的角度,介绍了以太坊中Block/Header的结构体设计,BlockChain如何以链表的方式管理Block的,Ethereum独创的哈希查找树类型数据结构-Merkle-PatriciaTrie的来龙去脉,以及内部存储模块StateDB以及stateObject的运行方式等。

2017-07-19 15:31:52

阅读数:5213

评论数:11

一款轻量级的项目管理工具Redmine

介绍了在Ubuntu系统如何安装一款轻量级项目管理软件Redmine

2015-04-14 16:53:23

阅读数:1474

评论数:1

[oj.leetcode] 跟leecode的博客旧文说再见

在我目前的博客中,数量最多的就是leecode问题的解答。这些归在leetcode标签之下的文章,其中的绝大部分,基本就是简单一说思路,然后贴代码。 比如这种 它们的共同特征就是结构较简单,讲解也不多,贴的代码行数能占整个篇幅的七八成。这种文章写起来很快,leecode标签下最多时候有45篇。...

2015-04-12 21:48:34

阅读数:783

评论数:0

用opencv创建一个图片搜索引擎的几点改进

在《用Python和OpenCV创建一个图片搜索引擎的完整指南》介绍的python代码实现基础上,本文针对C++的代码实现,提出了几点改进,以便提高搜索精度。

2015-04-08 14:54:59

阅读数:978

评论数:0

[oj.leetcode] #174 - Dungeon Game 一次特别的DP之旅

原题篇幅挺长,关于一个2D关卡游戏,这里就不赘述了。这里以矩阵的方式陈述一下。 在一个二维数组M*N中, 有一个王子需要从起点[0][0]出发,移动到终点[m-1][n-1],每次移动一格,方向只能向右或者向下。出发前,王子的(健康)值至少为1。矩阵中每一格有一整型值,可正可负可0,对于经过的王子...

2015-02-19 02:21:26

阅读数:549

评论数:1

[oj.leetcode] #179 - LargestNumber, 如何在7ms内跑完 221个测试用例

题目:已知一个整型数组,如何排列使得最后组成一个最大整数,输出这个整数的字符串,假设都是非负。 比如[3, 30, 34, 5, 9], 结果应该是 9534330 这里选用C++。 第一感觉应该是跟排序相关,稳妥方案是快速排序quick sort. 每两个数之间比较时,应从最高位开始,一位...

2015-02-08 00:01:21

阅读数:731

评论数:0

Python中yield的使用小述

Python中yield恐怕是最迷人的特性之一了,不过要想理解

2014-08-21 22:56:16

阅读数:886

评论数:0

[Android] - 如何写Instrumentation UT Manifest.xml

<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.android.settings.tests"> ...

2014-07-24 10:25:09

阅读数:918

评论数:0

递归一题三解-将二分查找树(BST)转化成循环双链表(DLL)

题目来自leetcode: 已知一个BST(binary search tree), 将其原地转化成一个循环的排序过的双链表(circular sorted double linked list)。 说明:BST的节点有两个指针left, right, 分别指向比它小,和比它大的节点。变成DLL之...

2014-01-03 12:09:13

阅读数:1763

评论数:0

线性查找-股票最佳收益

best buy and sell stock problem 1: permitted only once buy and sell problem 2: no limit of counts of buy and sell

2014-01-02 10:57:48

阅读数:985

评论数:0

线性查找-数组最大距离

int A[n], find maximum j-i subjected to constraint of A[i]

2014-01-02 10:11:24

阅读数:717

评论数:0

复制数据结构 - 单链表及图

这次依然是两道算法题,复制链表,以及复制图,最后会给出一些总结。 题目一,复制一个单链表(SLL - single linked list), 其节点除了一个基本的后向指针(next), 还有一个指向链表中任意一个节点的随机指针(random)。 struct ranSLLNode{ ch...

2013-12-23 15:07:55

阅读数:913

评论数:0

判断回文整型数

题目来自leetcode, 要求判断一个整型数是否是回文,不使用任何额外空间。 我承认,是“不使用额外空间”这句话让我想到了递归。 一般判断回文字符串是一个一个字符单独比较,但是对于整型数,显然我们有更好的办法。将它从低位到高位颠倒顺序重新排列,如果跟原数一样,那就成了。 bool ispa...

2013-12-14 21:24:10

阅读数:585

评论数:0

网页前端持续集成(2) - qunit+JSCoverage+PhantomJS使用小记

今年早些时候为公司项目做过一些网页前端程序的持续集成(CI),在过去的几个月中不断地给不同的人讲解过之后,我决定开一篇介绍一下。 公司项目是一个ASP.net的网站,其中核心是一些JavaScript 的框架库以及扩展函数。基本目标是在Jenkins上集成单元测试(Unit Test), 和代码覆...

2013-12-12 23:42:43

阅读数:1892

评论数:0

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