自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Do Better

while(1){I love coding!}

  • 博客(217)
  • 资源 (8)
  • 收藏
  • 关注

原创 【牛客网】腾讯2018春招技术类编程题汇总

1-翻转数列思路感觉此道题有点找规律,取数据的时候,按奇偶性进行选取,但我这种方法只能过60%代码#include<iostream>using namespace std;//过60%int main() { long long n, m; while (cin >> n >> m) { long long sum = 0; for (long long i = 1; i <= n; i++) { if ((i - 1) / m %

2020-09-03 12:23:59 37

原创 【牛客网】字节跳动2019春招研发部分编程题汇总

1-万万没想到之聪明的编辑解题思路此题的编辑规则如下三个同样的字母连在一起,一定是拼写错误,去掉一个的就好啦:比如 helllo -> hello两对一样的字母(AABB型)连在一起,一定是拼写错误,去掉第二对的一个字母就好啦:比如 helloo -> hello上面的规则优先“从左到右”匹配,即如果是AABBCC,虽然AABB和BBCC都是错误拼写,应该优先考虑修复AABB,结果为AABCC从题目可以看出,本题的规则实际上只有两个,1和2,1是指连续3个同样的字母,则去掉一

2020-09-02 12:07:14 51

原创 【牛客网】腾讯2020校园招聘笔试题

1-压缩算法思路从内向外替换,right代表从左侧开始第一个开始的’]‘位置,left代表与当前’]‘对应的’[‘位置,k记录’|‘位置在遍历时,将’[‘和’|‘的位置分布入栈,当读到’]'时弹出参考自该博客代码#include<iostream>#include<string>#include<stack>using namespace std;/*思路:从内向外替换,right代表从左侧开始第一个开始的']'位置,left代表与当前'

2020-09-01 11:06:33 52

原创 【LeetCode】15. 三数之和

解题思路代码#include<iostream>#include<vector>#include<algorithm>using namespace std;class Solution {public: vector<vector<int>> threeSum(vector<int>& nums) { vector<vector<int>> ans;

2020-08-18 15:06:14 31

原创 【LeetCode】1. 两数之和

解题思路在进行迭代并将元素插入到表中的同时,我们还会回过头来检查表中是否已经存在当前元素所对应的目标元素。如果它存在,那我们已经找到了对应解,并立即将其返回。时间复杂度O(n)空间复杂度O(n)代码#include<iostream>#include<vector>#include<unordered_map>using namespace std;class Solution {public: vector<int> twoSum

2020-08-18 15:04:40 42

原创 【LeetCode】146. LRU缓存机制

思路参考自LRU 策略详解和实现采用的数据结构:双向哈希链表代码#include<iostream>#include<algorithm>#include<unordered_map>using namespace std;struct Node{ int key; int value; Node* pre; Node* next; //构造函数初始化 Node(int key, int value) :k

2020-08-15 13:27:56 42

原创 【剑指Offer】61. 扑克牌中的顺子

解题思路参考自面试题61. 扑克牌中的顺子(集合 Set / 排序,清晰图解)满足顺子的条件1、除大小王外,所有牌无重复;2、除此5张牌中最大的牌为max,最小的牌为min(大小王除外),则需满足:max-min<5时间复杂度O(NlogN),此处N=5,数组排序使用NlogN空间复杂度O(1)代码class Solution {public: bool isStraight(vector<int>& nums) { int numsWa

2020-08-15 10:19:16 30

原创 【剑指Offer】60. n个骰子的点数

思路第一步:定义数组元素的含义dp[i][j],表示投掷完i枚骰子后,点数j的出现次数第二步:找出关系数组元素间的关系式最后一个阶段也就是投掷完 n 枚骰子后的这个阶段,我们用dp[n][j] 来表示最后一个阶段点数 j 出现的次数。单单看第 n 枚骰子,它的点数可能为 1 , 2, 3, ... , 6 ,因此投掷完 n 枚骰子后点数 j 出现的次数,可以由投掷完 n-1 枚骰子后,对应点数 j-1, j-2, j-3, ... , j-6 出现的次数之和转化过来。因此,第i枚骰子投掷后,出现的

2020-08-07 11:29:41 49

原创 【LeetCode】56. 合并区间

解题思路1、排序,按照区间的左端点大小进行排序,使用默认排序规则即可2、从i=0开始遍历排序后的数组,使用左指针指向区间的左端点,右指针指向右端点3、对从i+1开始的数组,判断右指针是否会大于第j个区间的左端点,如果是,则说明可以更新右指针,直到小于第j个区间的左端点为止4、将左指针和右指针压入结果数组ans中。5、更新i值为j,即从断开的区间开始进行遍历代码class Solution {public: vector<vector<int>> merge(vect

2020-08-06 10:51:24 40

原创 【剑指Offer】 56 - II. 数组中数字出现的次数 II

解题思路参考自面试题56 - II. 数组中数字出现的次数 II(位运算 + 有限状态自动机,清晰图解)考虑数字的二进制形式,对于出现3次的数字,各二进制位出现的次数都是3的倍数。因此,统计所有数字的各二进制位中1的出现次数,并对3求余,结果则为只出现一次的数字注意,每一个二进制位上的个数求余后一定是1或是0,而不会是比3小的其他数。步骤:1、遍历nums数组,建立一个长度为32的数组counts,通过与运算和右移操作,获得所有数字的各二进制位的1的出现次数2、遍历counts数组利用左移

2020-08-05 10:19:42 77

原创 【剑指Offer】 56 - I. 数组中数字出现的次数

解题思路本题有很多种解法,但由于题目进行了限制,因此只能采用位运算的方法才能满足。异或运算有以下三个性质移位运算:>> 每右移1位,相当于除2与运算:& 判断为奇数还是偶数对于此题的一个简化版的题目136. 只出现一次的数字136题可以通过一次遍历的方式直接求解。而本题由于有两个出现的数字,因此如果可以拆分成两个数组,就可以通过136题的方法进行求解。如果从头到尾依次异或当前的数组的元素,我们的结果将是两个只出现一次的数字异或的结果,由异或的性质可知,两个数相同为0,不同

2020-08-04 10:58:28 45

原创 【剑指Offer——待进一步理解】 44. 数字序列中某一位的数字

代码class Solution {public: int findNthDigit(int n) { int digit = 1; long start = 1; long count = 9; while (n > count) { n -= count; digit += 1; start *= 10; count = digit * start * 9; } long num = start + (n - 1) / digit; ret

2020-07-19 17:35:16 39

原创 【剑指offer】46. 把数字翻译成字符串

解题思路第一步:定义数组元素的含义题目要求的是一个数字有多少种不同的翻译方法,因此设dp[i]代表第i个结尾的数字的翻译方案数量第二步:找出关系数组元素间的关系式若xix_{i}xi​和xi−1x_{i-1}xi−1​组成的数字可以被翻译,则dp[i]=dp[i-1]+dp[i-2],xi−1xiϵ[10,25]x_{i-1}x_{i}\epsilon [10,25]xi−1​xi​ϵ[10,25];否则dp[i]=dp[i-1],xi−1xiϵ[1,10)∪(25,99]x_{i-1}x_{i

2020-07-19 16:47:56 37

原创 【剑指offer】45. 把数组排成最小的数

解题思路通过题意可知,不管这些数字如何排列,形成的数字位数时不变的。所以如果高位的数字越小,则最终的结果也就越小。下面的n为数字的个数对于n=2的情况如[26,38],根据高位越小越好,可知,我们应该排列成2638对于n>2的情况如[26,29,1],根据我们定义的规则,一定是将第一位小的数字放在最高位,因此先选出1,对于剩下两个数字,由于第1位数字相同,我们会比较第2位,因此我们最终会排列成12629从上面我们可以发现的排序规则就是,如果第1位小,就将其排到最前面,如果第1位相等,则比

2020-07-19 15:18:36 39

原创 【LeetCode】215. 数组中的第K个最大元素

解题思路方法一使用快速排序中的Partition函数,获得第j位上的元素,如果第j位和k-1相同,则直接返回即可时间复杂度O(N)代码#include<vector>class Solution {public: int findKthLargest(std::vector<int>& nums, int k) { int start = 0; int end = nums.size() - 1; int

2020-07-15 15:50:28 54

原创 【剑指offer】36. 二叉搜索树与双向链表

思路算法流程:Node* treeToDoublyList(Node* root)1.特例处理:若结点root为空,直接返回2.转化为排序双向链表:调用inorder(Node* root)3.构建循环链表:head和pre双向结点引用4.返回头结点void inorder(Node* root)中序遍历的改写,在访问根节点时,同时更新pre,head的值,使其能够双向连接代码class Solution {public: Node* pre=nullptr, *head;//

2020-07-10 11:45:31 59

原创 【剑指offer】35. 复杂链表的复制

解题思路算法流程:建立映射对新链表结点和原链表结点建立hashmap的映射关系,原链表结点为key,新链表结点为value赋值通过hashmap将原链表的next,random所指结点赋给新链表,注意赋值时,要判断该两值是否不为空,因为建立hashmap时,没有建立null,null的映射返回新链表头结点hashmap[head]代码class Solution {public: Node* copyRandomList(Node* head) {

2020-07-10 10:44:38 47

原创 【剑指offer】33. 二叉搜索树的后序遍历序列

思路1.确定根节点2.遍历序列(除去root结点),找到第一个大于root的位置,则该位置左边为左子树,右边为右子树3.遍历右子树,若发现有小于root的值,则直接返回false;4.分别判断左子树和右子树是否仍是二叉搜索树(即递归步骤1、2、3)代码class Solution {public: bool verifyPostorder(vector<int>& postorder) { if (postorder.empty()) return

2020-07-09 19:39:31 67

原创 【数据结构与算法】二叉树的遍历方法总结

先序遍历递归版非递归版中序遍历递归版非递归版后序遍历递归版非递归版层序遍历#include<iostream>#include<queue>#include<vector>using namespace std;struct TreeNode { int val; TreeNode *left; TreeNode *right; TreeNode(int x) : val(x), left(NU

2020-07-09 15:44:58 39

原创 【剑指offer】31. 栈的压入、弹出序列

解题思路算法流程:初始化,辅助栈tempS和弹出序列的索引i遍历压入序列pushed压入pushed的元素e判断tempS是否为空且栈顶元素和popped[i]相等tempS出栈i++3.返回tempS.empty(),如果其为空,说明合法,反之不合法代码class Solution {public: bool validateStackSequences(vector<int>& pushed, vector<int>&

2020-07-09 15:14:52 48

原创 【剑指offer】21. 调整数组顺序使奇数位于偶数前面

解题思路双指针,p1指向头,p2指向尾,p1在遇到偶数时停下,p2在遇到奇数时停下,如果此时p1<p2,则进行交换代码class Solution {public: vector<int> exchange(vector<int>& nums) { int p1 = 0, p2 = nums.size() - 1; while (p1<p2) { while (p1 <

2020-07-07 10:55:43 63

原创 【MIT6.837】A3:OpenGL & Phong Shading

A3:OpenGL & Phong Shading实验概述实现交互式相机实现Blinn-Phong光照模型及对应的光滑明暗处理技术实现绘制各个图元的方法,尤其是球图元的绘制Hints1、Phong模型与Bling-Phong的区别Phong适合模拟塑料,比"反射"材质表现出的介质更光滑一些,适合模拟玻璃、水、冰等高反光特性的介质BlinnPhong大多适用于金属材质Blinn-Phong它能提供比Phong更柔和、更平滑的高光,而且速度上也更快,因此成为很多CG软

2020-05-19 22:25:41 166

原创 【MIT6.837】A2:Transformations & Additional Primitives

A2:Transformations & Additional Primitives实验概述本实验的目标是实现更多的基本图元(如Plane、Triangle类的实现)、新增两种渲染模式(normal visualization和diffuse shading)、新增PerspectiveCamera类及变换(Transform类)的实现。实验步骤1 TASK分析下面右边的序号是在实验中实际完成的顺序[1] Object中更新球的计算交点方法【3】[2] Object中派生出pla

2020-05-17 22:25:15 110

原创 【MIT6.837】A1:Ray Casting

A1:Ray Casting(光线投射)学术名词camera obscura:针孔照相机Perspective:透视投影Orthographic:正交投影Parallel projection:平行投影Ray-Plane Intersection:射线与平面相交Ray-Sphere Intersection:射线与球面相交orthonormal basis:标准正交基Ray Casting:光线投射Ray tracing:光线追踪Geometric:几何学Algebraic:代数

2020-05-13 23:11:30 122

原创 【MIT6.837】A0: IFS

A0:迭代函数系统(IFS)任务概述6.837的第一个作业,实现IFS算法。目的是熟悉C++的语法特性,并且熟悉使用两个和图像生成和线性代数相关的简单库。通过生成一些奇妙的分形物体来体会图形学的乐趣。IFS 是一种构造分形的方法,得到的分形通常是自相似(self-similar)的。IFS最经典的例子是绘制一种蕨类植物(Barnsley’s fern),如下图所示,可以看到,每一个子叶片与整个叶片的形状相同。IFS由一个仿射变换(affine transformations)集合所定义,通常定义的仿

2020-05-12 20:21:10 179

原创 【OpenGL】三维场景漫游的实现

功能构建一个三维场景可利用glut提供的各种简单形体来搭建,或者读入别的模型,并加入光照效果用键盘操作一个物体(如一艘飞船,或一个机器人),在三维场景中漫游视点可以放在物体上,或跟随物体,利用gluLookAt()函数来实现对视点的控制思路1、开始想直接利用OpenGL的glulookAt函数,但发现并不好用2、之后参考他人资料寻思构造一个摄像机类,通过摄像机类达到控制视点,这部分通过参考LearnOpenGL上的摄像机类进行实现实验结果实验效果图程序控制键说明w,s,a,d分

2020-05-12 20:13:07 1034

原创 【OpenGL】机器人手臂的实现

一、基本功能实现了机器人的一只手臂,由上臂、下臂、五根手指共同组成,通过A、S、D、F、G键向上旋转,通过a、s、d、f、g键向下旋转,通过方向键left和right转向,通过up和down实现放缩。效果图如下:二、实现过程 1、实现手臂对于手臂的实现,可以使用一个经过放缩后的立方体作为手臂的一段。手臂模型搭建好后,就是要确定手臂的位置,因为手臂进行旋转,不是绕手臂的中心节点(等同于立体体的体心)进行旋转,它是绕手臂的一条边(等同于立方体的一条边)进行旋转。...

2020-05-12 19:48:46 413

原创 【LeetCode】134. 加油站

思路暴力法暴力破解,一方面验证自己对题目的理解是否正确,另一方面后续的优化也可以从这里入手。1、考虑从第0个点出发,能否回到第0个点。2、考虑从第1个点出发,能否回到第1个点。3、考虑从第2个点出发,能否回到第2个点。… …4、考虑从第n个点出发,能否回到第n个点。代码//暴力法class Solution {public: int canCompleteCircuit(v...

2020-04-26 18:04:15 126

原创 【LeetCode】面试题51. 数组中的逆序对

解题思路分治法:采用的就是归并函数中的分治思想,该题与分治排序的不同点在于,在治的过程中进行逆序对的统计,逆序对的个数为cnt += center - i + 1;这也是在归并排序上要加的代码代码/*思路:分治通过分的方式,获得每个子区间,在合并每个子区间时计算每个子区间内部的逆序对个数*/#include<iostream>#include <vector&...

2020-04-24 11:30:27 71

原创 【OpenGL】光照太阳系

一、要求二、思路0、效果图1、实现基本的太阳系采用局部变换的思路完成,实现太阳、地球、月亮及轨道的绘制2、宇宙中加入一盏泛光(方向光)加入思路: 1)设置好物体的法向 在这里可以不进行设置,因为在OpenGL是一个状态机中,如果不进行设置,则使用默认值 2)打开光照 3)设置光照参数 注意其实光照参数可以设置在打开光照之前,因为Open...

2020-03-24 16:41:46 730 8

原创 【OpenGL】太阳星系的实现

一、功能要求基本功能三个球体、一个表示太阳、一个表示地球、一个表示月亮;地球不停地绕太阳旋转,月亮绕地球旋转,期间它们三者都发生自转。扩展功能地球有两个月亮,画上轨道线,使轨道倾斜,放缩效果自己完成的效果图二、思路基本功能的实现首先搭好程序框架:1、 设置显示模式2、 初始化窗口3、 创建窗口4、 设置一系列回调函数5、 启动主循环框架设置完毕后,针对display()...

2020-03-22 14:47:20 452

原创 【LeetCode】409. 最长回文串

思路若要形成最长的回文串,则回文串中只会出现1次单个字符,因此只需统计字符串中有多少个字符其数目为奇数,s.size()-n个为奇数个数的字符+1即为最长回文串如果字符串没有出现奇数个数目的字符,则s.size()即为最长回文串代码class Solution {public: int longestPalindrome(string s) { unordered_map<c...

2020-03-20 00:19:45 49

原创 【LeetCode】142. 环形链表 II

解题思路hashmap法思路简单,时间复杂度O(n),空间复杂度O(n)Floyd法知道结论进行编程容易,但是自己推导出Floyd公式比较难,理解该方法,进行编程即可时间复杂度O(n),空间复杂度O(1)代码hashmap法class Solution {public: ListNode* detectCycle(ListNode* head) { if (head == ...

2020-03-17 20:48:23 38

原创 【LeetCode】141. 环形链表

代码方法1 hash表class Solution {public: bool hasCycle(ListNode* head) { //特判 if (head == nullptr || head->next == nullptr) return false; unordered_map<ListNode*,int> list; ListNode* cu...

2020-03-17 13:13:13 44

原创 【LeetCode】516. 最长回文子序列

思路其实就是求s和s的逆序的最长公共子序列的。转化成最长公共子序列问题就迎刃而解了。代码class Solution {public: int longestPalindromeSubseq(string s) { string s2(s); //s2反转 reverse(s2.begin(), s2.end()); //定义状态 //s的前i个字符和s2的前j个字符...

2020-03-17 11:45:05 70

原创 【LeetCode】647. 回文子串

思路思路同最长回文子串,只不过此题再开辟一个变量记录回文子串出现的次数即可代码class Solution {public: int countSubstrings(string s) { vector<vector<bool>> dp(s.size(), vector<bool>(s.size())); //初始化 int ans = 0...

2020-03-17 10:51:18 130

原创 【LeetCode】1160. 拼写单词

思路 哈希表计数对于一个单词word,只要其中的每个字母数量都不大于chars中对应的字母的数量,那么就可以用chars中的字母拼写出word。所以我们只需要用一个哈希表存储chars中每个字母的数量,再用一个哈希表存储word中每个字母的数量,最后将两个哈希表的键值逐一进行比较即可。代码class Solution {public: int countCharacters(vecto...

2020-03-17 10:30:52 57

原创 【LeetCode】5. 最长回文子串

思路1、定义数组元素的含义/定义状态dp[i][j]表示S[i]至s[j]所表示的子串是否是回文子串,是则为1,不是为0.2、找出数组间的关系式dp[i][j]={ dp[i+1][j-1],S[i]==S[j] 0,S[i]!=S[j]}3、找出初始值dp[i][i]=1,dp[i][i+1]=(S[i]==S[i+1])?1:0代码class...

2020-03-15 15:49:29 34

原创 【剑指offer】面试题57. 和为s的两个数字

思路刚开始自己的想法,对数组进行遍历,取第一个数时,通过二分法来找target-nums[i],但发现最终这样的代码超时,时间复杂度O(nlogn)改进的想法使用双指针法,左指针指向最小元素,右指针指向最大元素,比较两个指针所指元素的和与target的大小,如果相等,则说明找到,如果sum>target,则左指针++,反之,右指针++代码正确解法class Solution {...

2020-03-15 00:14:47 63

原创 【LeetCode】面试题 17.16. 按摩师

解题思路一、定义数组元素的含义dp[i]:第i次预约时,按摩师总预约时间长二、找出关系数组元素间的关系式第i次时,总预约时长,要么是从第i-2次接受预约后,本次也接受预约,要么本次不接受预约dp[i] = max(dp[i - 2] + nums[i-1], dp[i - 1]);三、找出初始值由题目可知,第1次接受预约时,总预约时长为dp[1]=nums[0]代码class S...

2020-03-14 21:42:42 239

【OpenGL】三维场景漫游.zip

1、构建一个三维场景 可利用glut提供的各种简单形体来搭建,或者读入别的模型,并加入光照效果 2、用键盘操作一个物体(如一艘飞船,或一个机器人),在三维场景中漫游 视点可以放在物体上,或跟随物体,利用gluLookAt()函数来实现对视点的控制

2020-05-12

【OpenGL】机器人手臂的实现.zip

实现了机器人的一只手臂,由上臂、下臂、五根手指共同组成,通过A、S、D、F、G键向上旋转,通过a、s、d、f、g键向下旋转,通过方向键left和right转向,通过up和down实现放缩。 效果图可先见本人博客

2020-05-12

【OpenGL】光照太阳系.zip

在太阳系程序的基础上添加光照效果 - 宇宙中加一盏泛光 - 太阳自发光 - 太阳系中加一艘飞碟,飞碟沿着椭圆轨道绕地球或太阳运行,其上有一个spot light始终照耀着地球 程序为博主个人独自编写,切勿用于商用

2020-05-12

OpenGL+C++太阳系实现.zip

采用全局变换的思路实现的太阳系模型,功能有:三个球体、一个表示太阳、一个表示地球、一个表示月亮;地球不停地绕太阳旋转,月亮绕地球旋转,期间它们三者都发生自转。之后扩展功能如下:地球有两个月亮,画上轨道线,使轨道倾斜,放缩效果

2020-03-22

MessageQueue.zip

基于自编写的类Fourinone,实现了消息队列(MQ)的发送/接收、主题订阅两种经典消息服务模式,之后讨论了消息队列在解耦、冗余、扩展性、灵活性、可恢复性、顺序保证、缓冲、异步通信方面的优势,最后总结了消息队列的应用场景。

2019-11-06

BoW(Bag of Words)词袋模型.zip

本demo实现的是基于bow原理对图片进行分类,并实现对选取得测试集进行查找 BoW(Bag of Words)词袋模型最初被用在文本分类中,将文档表示成特征矢量。它的基本思想是假定对于一个文本,忽略其词序和语法、句法,仅仅将其看做是一些词汇的集合,而文本中的每个词汇都是独立的。简单说就是讲每篇文档都看成一个袋子(因为里面装的都是词汇,所以称为词袋,Bag of words即因此而来),然后看这个袋子里装的都是些什么词汇,将其分类。如果文档中猪、马、牛、羊、山谷、土地、拖拉机这样的词汇多些,而银行、大厦、汽车、公园这样的词汇少些,我们就倾向于判断它是一篇描绘乡村的文档,而不是描述城镇的。 serachFeatures.py中,前面主要是一些通过parse使得可以在敲命令行的时候可以向里面传递参数,后面就是提取SIFT特征,然后聚类,计算TF和IDF,得到单词直方图后再做一下L2归一化。一般在一幅图像中提取的到SIFT特征点是非常多的,而如果图像库很大的话,SIFT特征点会非常非常的多,直接聚类是非常困难的(内存不够,计算速度非常慢),所以,为了解决这个问题,可以以牺牲检索精度为代价,在聚类的时候先对SIFT做降采样处理。最后对一些在在线查询时会用到的变量保存下来。对于某个图像库,我们可以在命令行里通过下面命令生成BoF。 query.py只能每次查找一张图片,并返回与之匹配度(递减)最接近的6张图片

2019-11-05

alibaba_java_开发手册.pdf

《阿里巴巴 Java 开发手册》是阿里巴巴集团技术团队的集体经验总结,经历了多次大规模一线实战的检验及不断的完善,反馈给广大开发者。现代软件行业的高速 发展对开发者的综合素质要求越来越高,因为不仅是编程知识点,其它维度的知识点也会影响到软件的最终交付质量。比如:数据库的表结构和索引设计缺陷可能带来软 件上的架构缺陷或性能风险;工程结构混乱导致后续维护艰难;没有鉴权的漏洞代码易被黑客攻击等等。所以本手册以 Java 开发者为中心视角,划分为编程规约、异常日志、MySQL 数据库、工程结构、安全规约五大块,再根据内容特征,细分成若干二级子目录。根据约束力强弱及故障敏感性,规约依次分为强制、推荐、参考三大类。对于规约条目的延伸信息中,“说明”对内容做了引申和解释;“正例”ᨀ倡什么样的编码和实现方式;“反例”说明需要ᨀ防的雷区,以及真实的错误案例

2019-09-24

区块链:技术驱动金融 - [美] 阿尔文德·纳拉亚南 & 约什·贝努等

该书籍为区块链领域的经典书籍,对于读者前期知识储备要求较小,属于科普性读物,对于入门刚接触区块链的同学,它是一本不错的读物

2019-03-11

空空如也

空空如也

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

TA关注的人 TA的粉丝

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