上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 26 下一页
摘要: 转载于:Merkle Patricia Tree 详解 1. 前言 1.1 概述 Merkle Patricia Tree(又称为Merkle Patricia Trie)是一种经过改良的、融合了默克尔树和前缀树两种树结构优点的数据结构,是以太坊中用来组织管理账户数据、生成交易集合哈希的重要数据结构 阅读全文
posted @ 2021-10-01 22:13 Garrett_Wale 阅读(822) 评论(0) 推荐(0) 编辑
摘要: Hyperledger Fabric开发环境搭建 centos环境下安装 相关软件和工具下载 下载git yum install -y git 查看版本号:yum --version 安装docker 安装相关软件包:yum install -y yum-utils device-mapper-pe 阅读全文
posted @ 2021-09-23 20:41 Garrett_Wale 阅读(227) 评论(0) 推荐(0) 编辑
摘要: 智能合约的编写,测试与部署 前置配置 下载Ganache npm install -g ganache-cli 启动ganache-cli: gannche-cli 进入geth客户端: geth --datadir "../../data/chain" --networkid 4224 --rpc 阅读全文
posted @ 2021-09-23 16:52 Garrett_Wale 阅读(355) 评论(0) 推荐(0) 编辑
摘要: Paxos一致性算法 什么是paxos协议? Paxos用于解决分布式系统中一致性问题。分布式一致性算法(Consensus Algorithm)是一个分布式计算领域的基础性问题,其最基本的功能是为了在多个进程之间对某个(某些)值达成一致(强一致);简单来说就是确定一个值,一旦被写入就不可改变。pa 阅读全文
posted @ 2021-09-22 09:38 Garrett_Wale 阅读(61) 评论(0) 推荐(0) 编辑
摘要: RAFT一致性算法 转载于Raft协议详解 前言 分布式存储系统通常通过维护多个副本来进行容错,提高系统的可用性。要实现此目标,就必须要解决分布式存储系统的最核心问题:维护多个副本的一致性。 首先需要解释一下什么是一致性(consensus),它是构建具有容错性(fault-tolerant)的分布 阅读全文
posted @ 2021-09-21 16:55 Garrett_Wale 阅读(328) 评论(0) 推荐(0) 编辑
摘要: 分布式一致性算法2PC和3PC 为了解决分布式一致性问题,产生了不少经典的分布式一致性算法,本文将介绍其中的2PC和3PC。 2PC即Two-Phase Commit,译为二阶段提交协议。 3PC即Three-Phase Commit,译为三阶段提交协议。 分布式系统和分布式一致性问题 分布式系统, 阅读全文
posted @ 2021-09-17 15:28 Garrett_Wale 阅读(414) 评论(0) 推荐(0) 编辑
摘要: 拜占庭问题 拜占庭将军问题(Byzantine Generals Problem),是由Leslie Lamport在其同名论文中提出的分布式对等网络通信容错问题。在分布式计算中,不同的计算机通过通讯交换信息达成共识而按照同一套协作策略行动。但有时候,系统中的成员计算机可能出错而发送错误的信息,用于 阅读全文
posted @ 2021-09-17 14:27 Garrett_Wale 阅读(1594) 评论(0) 推荐(0) 编辑
摘要: centos安装以太坊 首先安装go环境 进入下载目录 cd /opt/software 下载go安装包 wget https://dl.google.com/go/go1.17.1.linux-amd64.tar.gz 解压到指定目录 tar zxvf go1.17.1.linux-amd64.t 阅读全文
posted @ 2021-09-14 16:36 Garrett_Wale 阅读(241) 评论(0) 推荐(0) 编辑
摘要: 题目来源 LeetCode_322 题目详情 给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。 计算并返回可以凑成总金额所需的 最少的硬币个数 。如果没有任何一种硬币组合能组成总金额,返回 -1 。 你可以认为每种硬币的数量是无限的。 示例 1: 输入: 阅读全文
posted @ 2021-04-03 21:30 Garrett_Wale 阅读(344) 评论(0) 推荐(0) 编辑
摘要: 31. 下一个排列 LeetCode_31 题目描述 题解分析 相似题目 31. 下一个排列 556. 下一个更大元素 III 代码实现 class Solution { public void nextPermutation(int[] nums) { int i = nums.length - 阅读全文
posted @ 2021-04-03 20:42 Garrett_Wale 阅读(47) 评论(0) 推荐(0) 编辑
摘要: 82. 删除排序链表中的重复元素 II LeetCode_82 题目描述 题解分析 解法一:复杂解法 /** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * Li 阅读全文
posted @ 2021-04-01 21:10 Garrett_Wale 阅读(77) 评论(0) 推荐(0) 编辑
摘要: 41. 缺失的第一个正数 LeetCode_41 题目描述 题解分析 利用哈希表的思想,但是不是使用HashMap。 使用整个数组作为哈希桶,每个nums[i]的数字作为索引下标,将其置为负数表示该位置有数字。 需要注意最后返回的是n+1表示原来数组中包含所有1-n的数字。 方法一:哈希思想 cla 阅读全文
posted @ 2021-04-01 20:38 Garrett_Wale 阅读(77) 评论(0) 推荐(0) 编辑
摘要: 题目来源 LeetCode_78 题目描述 给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的子集(幂集)。 解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。 示例 1: 输入: nums = [1,2,3] 输出: [[],[1],[2],[1,2],[3],[ 阅读全文
posted @ 2021-03-31 20:52 Garrett_Wale 阅读(56) 评论(0) 推荐(0) 编辑
摘要: 136. 只出现一次的数字 LeetCode_136 题目描述 相似题目:剑指 Offer 56 - I. 数组中数字出现的次数 代码实现 class Solution { public int singleNumber(int[] nums) { int n = nums.length; int 阅读全文
posted @ 2021-03-31 20:17 Garrett_Wale 阅读(49) 评论(0) 推荐(0) 编辑
摘要: 468. 验证IP地址 LeetCode_468 题目描述 方法一:正则表达式 import java.util.regex.*; class Solution { //Ipv4的正则匹配表达式 String regIpv4 = "([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0- 阅读全文
posted @ 2021-03-30 10:29 Garrett_Wale 阅读(87) 评论(0) 推荐(0) 编辑
摘要: 题目来源 LeetCode_153 相似题目 33. 搜索旋转排序数组 153. 寻找旋转排序数组中的最小值 154. 寻找旋转排序数组中的最小值 II 题目描述 题解分析 解法一:二分法-思路一 这道题高效的解法就是二分法,利用旋转数组部分有序的性质找到最小值。 首先考虑一种情况:数组未旋转或者旋 阅读全文
posted @ 2021-03-30 09:41 Garrett_Wale 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 题目来源 LeetCode_34 题目描述 题解分析 解法一:二分法 这里与传统的二分法不同,这里需要找到指定元素的左右边界,所以我们无法直接套用二分法的模板。 其实,我们可以分别考虑这两种情况,与普通的二分法不同,当需要找左边界时,当我们找到target == nums[mid],我们不是直接返回 阅读全文
posted @ 2021-03-28 22:20 Garrett_Wale 阅读(58) 评论(0) 推荐(0) 编辑
摘要: 48. 旋转图像 LeetCode_48 题目描述 方法一:使用辅助数组 class Solution { public void rotate(int[][] matrix) { //第i,j的元素翻转后出现在倒数第i列的第j个元素 int m = matrix.length; int n = m 阅读全文
posted @ 2021-03-28 21:37 Garrett_Wale 阅读(66) 评论(0) 推荐(0) 编辑
摘要: 143. 重排链表 LeetCode_143 题目描述 代码实现 /** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode() {} * List 阅读全文
posted @ 2021-03-27 21:24 Garrett_Wale 阅读(52) 评论(0) 推荐(0) 编辑
摘要: 143. 重排链表 LeetCode_143 题目描述 题解分析 本题的解题核心是需要找到原链表的中间节点,然后将中间节点之后的链表进行反转。 如何找到中间节点呢?这里可以使用快慢指针的思想,通过设置slow和fast指针,当fast走到尾结点时,slow指针敲好指向中间节点。 这里的反转链表操作比 阅读全文
posted @ 2021-03-27 21:22 Garrett_Wale 阅读(48) 评论(0) 推荐(0) 编辑
上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 26 下一页