- 博客(141)
- 资源 (1)
- 收藏
- 关注
原创 区块链术语
虚拟货币地址由遗传字符和数字组成,常见的地址以1作为开头,常见的交易是虚拟货币从一个地址转移到另一个地址。也可以是说一个区块链上的账户上针对于一个虚拟货币的钱包,用来存储这些虚拟货币,在该地址下的所有的虚拟货币都属于这个钱包,该钱包属于区块链账户。是一个共享的分布式账本,其中的交易通过附加区块永久记录,记录一旦上链,便无法更改。在比特币网络中,数据会以文件的形式被永久记录,这些文件就是区块链中的区块。区块头里存储着区块的头信息,包括上一个区块的哈希值(将区块连成链),本区块体的哈希值,和时间戳等标识。
2024-10-21 14:42:55
400
原创 fabric-sdk-go
代码很简易,主要为了了解怎么使用fabric为编程人员提供的sdk从而提供HTTP接口的情况。路径下的代码文件为chaincode,主要包含对链操作部分的代码----智能合约。:http web接口的实现,在接口中通过调用智能合约实现对区块链的操作。使用fabric-sample的网络结构用容器搭建起测试网络即可。:定义对外http接口的web路由,与程序的启动。:golang环境相关文件。:golang环境相关文件。
2024-10-18 14:23:47
513
原创 数据结构图的DFS深度优先搜索C语言
#include <iostream>#include <queue>using namespace std;#define maxSize 100#define Elemtype intbool visited[maxSize];typedef struct { Elemtype vexs[maxSize]; int arcs[maxSize][maxSize]; int numVexs; int numArcs;}adjacenryM
2022-02-21 16:26:07
279
原创 数据结构图的BFS广度优先搜索C语言
#include <iostream>#include <queue>using namespace std;#define maxSize 100#define Elemtype intbool visited[maxSize];typedef struct { Elemtype vexs[maxSize]; int arcs[maxSize][maxSize]; int numVexs; int numArcs;}adjacenryM
2022-02-21 15:59:14
254
原创 数据结构邻接表图C语言
#include <iostream>using namespace std;#define Elemtype int#define maxSize 100#define initData -1typedef struct aNode{ int indexVex; struct aNode *nextArcNode;}arcNode;typedef struct vNode{ Elemtype data; arcNode *firstArcNode
2022-02-21 15:13:36
792
原创 数据结构邻接矩阵图C语言
#include <iostream>using namespace std;#define maxSize 100#define Elemtype inttypedef struct { Elemtype vexs[maxSize]; int arcs[maxSize][maxSize]; int numVexs; int numArcs;}adjacenryMatrixGraph;void initAdjacenryMatrixGraph(adj
2022-02-19 16:15:41
419
原创 数据结构并查集C语言
#include <iostream>using namespace std;#define maxSize 100#define Elemtype int#define initSet -1typedef struct { Elemtype a[maxSize];}mergeAndFind;// 初始化并查集void initMergeAndFind(mergeAndFind &T) { for(int i = 0; i < maxSize;
2022-02-18 15:50:52
484
原创 数据结构后序线索二叉树C语言
#include <iostream>using namespace std;#define Status int #define OK 1#define ERROR 0#define Elemtype chartypedef enum{ Link,Thread}PointerTag;typedef struct BiThrNode{ Elemtype data; struct BiThrNode *lchild, *rchild; struct BiThrNode
2022-02-14 15:46:23
523
原创 数据结构先序线索二叉树C语言
#include <iostream>using namespace std;#define Status int #define OK 1#define ERROR 0#define TElemType char typedef enum{ Link,Thread}PointerTag;typedef struct BiThrNode{ TElemType data; struct BiThrNode *lchild, *rchild; PointerTag LTa
2022-02-14 15:13:26
588
原创 数据结构中序线索二叉树C语言
#include <iostream>using namespace std;#define Elemtype chartypedef struct BiTNode { Elemtype data; struct BiTNode *lchild, *rchild; int LTag, RTag;} BiThreadNode, *BiThreadTree;BiThreadNode *pre; // 当前访问节点的前驱void visit(Elemtype
2022-02-13 15:54:24
366
原创 数据结构链式二叉树C语言
#include <iostream>#include <queue>// queue是C++语言中的头文件,它包含了队列的实现以及一系列的操作。// 在这里是为了实现二叉树的层次实现using namespace std;#define TRUE 1#define FALSE 0#define Elemtype chartypedef struct tNode{ Elemtype data; struct tNode *leftchild, *rig
2022-02-13 11:53:48
214
原创 数据结构顺序二叉树C语言
#include <iostream>using namespace std;#define Elemtype char#define maxSize 100typedef struct{ Elemtype data[maxSize+1]; int length;}seqBiTree;// 这种顺序二叉树是只可以存储完全二叉树或者满二叉树的,// 或者说只有这两类的二叉树才会有最大的存储效率,// 若需要存储其他类型的普通的二叉树,也必须要按照这种方式去存储。
2022-02-12 15:52:46
674
原创 数据结构优化的KMP算法C语言
#include <iostream>using namespace std;void getnextval(char T[], int lengtht, int *nextval) { int i = 1; int j = 0; nextval[i-1] = 0; while(i < lengtht) { if(T[i-1] == T[j-1] || j == 0) { i ++; j +
2022-02-11 17:02:41
208
原创 数据结构KMP模式匹配C语言
#include <iostream>using namespace std;bool getNext(char T[], int length, int *next) { int i = 1; int j = 0; next[i-1] = 0; while(i < length) { if(j == 0 || T[i-1] == T[j-1]) { i ++; j ++;
2022-02-11 16:42:10
389
原创 数据结构简单模式匹配C语言
#include <iostream>using namespace std;int simpleMatch(char S[], int lengths, char T[], int lengtht) { int i = 1; int j = 1; while(i <= lengths && j <= lengtht) { if(S[i-1] == T[j-1]) { i ++;
2022-02-11 16:41:16
532
原创 数据结构堆串C语言
#include <iostream>using namespace std;#define Elemtype char#define maxSize 100#define initSize 10#define Equal 0#define Bigger 1#define Smaller -1typedef struct { Elemtype *data; int length; int size;}heapString;void initHeapS
2022-02-09 17:08:12
486
原创 数据结构顺序串C语言
#include <iostream>using namespace std;#define Elemtype char#define maxSize 100#define Equal 0#define Bigger 1#define Smaller -1typedef struct { Elemtype data[maxSize]; int length;}seqString;void initSeqString(seqString &S) {
2022-02-09 16:33:21
609
原创 数据结构链表队列C语言
#include <iostream>using namespace std;#define Elemtype int#define maxSize 100typedef struct Node{ Elemtype data; struct Node *next;}qNode;typedef struct { qNode *rear; qNode *front;}linkQueue;bool initLinkQueue(linkQueue &am
2022-02-07 15:38:13
443
原创 数据结构顺序队列C语言
#include <iostream>using namespace std;#define Elemtype int#define maxSize 100typedef struct { int data[maxSize]; int front; int rear;}seqQueue;void initSeqQueue(seqQueue &Q) { Q.front = 0; Q.rear = 0;}bool isEmptySe
2022-02-07 15:18:07
383
原创 数据结构链式栈C语言
#include <iostream>using namespace std;#define Elemtype int#define maxSize 100typedef struct LSNode{ Elemtype data; struct LSNode *next; }linkStackNode, *linkStack;bool initLinkStack(linkStack &S) { S = new linkStackNode; i
2022-02-06 19:41:46
218
原创 数据结构顺序栈C语言
#include <iostream>using namespace std;#define ElemType int#define maxSize 100typedef struct { ElemType data[maxSize]; int top;}seqStack;void initSeqStack(seqStack &S) { S.top = 0;}bool pushSeqStack(seqStack &S, ElemType
2022-02-06 19:17:39
120
原创 数据结构静态链表C语言
#include <iostream> using namespace std;#define ElemType int#define maxSize 100typedef struct{ ElemType data; int next;}StaticList[maxSize];void initStaticList(StaticList &L) { for(int i = 0; i < maxSize; i ++) { L[i
2022-02-06 16:55:07
695
原创 数据结构循环双链表C语言
#include <iostream> using namespace std;#define ElemType int#define maxSize 100typedef struct dNode { ElemType data; struct dNode *next, *prior;}dNode, *doubleLinkList;// 循环双链表与双链表最大的不同就是在进行初始化的时候和进行尾插和头插法创建链表的时候有一些不同// 初始化循环双链表bool
2022-02-06 16:06:06
190
原创 数据结构双链表C语言
#include <iostream> using namespace std;#define ElemType int#define maxSize 100typedef struct dNode { ElemType data; struct dNode *next, *prior;}dNode, *doubleLinkList;// 初始化双链表bool initDoubleLinkList(doubleLinkList &L) { L =
2022-02-06 15:28:55
194
原创 数据结构单链表C语言
#include <iostream> using namespace std;#define ElemType int#define maxSize 100typedef struct lNode { ElemType data; struct lNode *next;}lNode, *linkList;//初始化一个链表bool InitLinkList(linkList &L) { L = new lNode; L->next
2022-02-06 15:27:30
98
原创 数据结构顺序表C语言
#include <iostream>using namespace std;#define maxSize 100#define ElemType inttypedef struct { int *data; int length;}sxList;//对线性表的初始化,为数组申请空间,并且将数组长度初始化为0bool InitSxList(sxList &L) { L.length = 0; L.data = new int[maxSi
2022-02-06 15:26:25
368
原创 MapReduce课程结构
MapReduce的定义MapReduce是一个分布式运算程序的编程框架,是用户开发“基于Hadoop的数据分析应用”的核心框架。MapReduce的核心功能是将用户编写的业务逻辑代码和自带默认组件结合成一个完整的分布式运算程序,并发运行在一个Hadoop集群上。MapReduce的优缺点优点:MapReduce易于编程,他简单的实现一些接口,就可以完成一个分布式程序。这个分布式程序可以分布到大量廉价的PC机器上的运行;也就是说,编写一个分布式程序,和写一个串行的程序是一样的,这样子可以减轻了程序
2021-11-16 17:37:30
2375
原创 C++词法分析器
首先分析#include <iostream>#include <cstdio>#include <cstring>#include <cstdlib>#define _KEY_WORDEND "waiting for your expanding"using namespace std;typedef struct //词的结构,二元组形式(单词种别,单词自身的值){ int typenum; //单词种别 char * word;}
2021-11-16 12:21:21
2122
原创 HDFS课程结构
HDFS的shell操作:什么是HDFS,HDFS就是用来管理多台机器上的文件,就是分布式文件管理系统。HDFS用来存储文件,是一个文件系统,通过目录树来定位文件。是有很多台服务器联合起来实现他的功能的。适合一次写入,多次读出的场景,并且不支持文件的修改,适合用作数据分析,但是不适合作为网盘。HDFS的优缺点优点:高容错性,数据自动保存副本,通过增加副本的形式,提高容错性。某一个副本丢失之后,可以自动恢复。(在另一台主机上进行恢复)。若集群的数量足够多 ,则可以在任意时间总是保持着定义的副本的数
2021-11-15 17:43:05
1403
原创 Linux-shell的变量
shell的变量影响bash环境的变量变量的显示与配置显示配置别名历史历史命令读取和记录的过程!什么是变量,某一个特定的字符串来代表不固定的内容。shell变成就像C, java一样也是一种语言。使用变量主要是为了方便。在Linux中~是一个变量,在不同的用户下~所代表的不一样。影响bash环境的变量成功登录,使⽤shell;获得bash运⾏程序;系统通过⼀些变量来提供数据的存取,或⼀些环境的配置参数值;将环境变量读⼊系统;PATH、HOME、HOSTNAME、SHELL;环境变量通
2021-05-12 16:18:53
221
原创 Linux-bash
bashkernel为什么要学习命令行shell合法的shellshells文件使用者shellbash shellbash shell简介bash功能type命令kernel管理整个计算机硬件的操作系统使kernel,但是kernel又是需要被保护的,就是用户无法直接通过对kernel的命令来操作核心,所以通过shell命令来间接的对计算机执行某种命令。例如:在听音乐的时候,计算机都做了什么。首先要有一部分的硬件的条件:声卡,音响等核心管理:就是支持声卡的芯片组,提供芯片的驱动程序。在应用程序
2021-05-12 15:00:58
98
原创 Linux-账号与组群
Linux账号与组群切换身份到rootUID和GID文件如何判断拥有者和组群?使用者账号:/etc/passwd对于其中的内容的分析/etc/shadow对于其中的内容的分析/etc/group对于其中的内容分析账号管理增对用户密码的操作chageusermoduserdel身份的切换susudusudo的流程visudo与/etc/sudoersLinux主机上用户信息的查询id [用户名]w和wholast和lastlog切换身份到rootLinux账号与组群主要是针对管理员的操作,进行身份的的切换
2021-05-09 10:45:31
566
原创 Linux-make
make工程管理器make的使用make的概念Makefile的文件格式目标(target)前置条件命令(command);\.ONESHELL工程管理器make的使用代码编程可执行文件,叫做编译(compile);在一个项目中,先编译这个,还是先编译那个(即编译的安排),叫做构建(build)。make是最常用的构建工具,诞生于1977年,主要用于C语言想项目。实际上,任何只要某个文件发生变化,就要重现构建的项目都可以用make构建。make的概念make: 制作。比如,要做出文件a.txt,
2021-05-09 08:26:12
252
原创 Linux-gdb
gdb什么是gdb编写程序用于测试运行该程序编译运行gdb的启动gdb的退出helpgdb的常用命令显示程序源代码list搜索字符串执行程序运行:设置断点以行数设置断点以函数设置断点以条件表达式设置断点以条件表达式变化设置断点gdb的使用查看断点管理断点查看和设置变量的值printwhatis(没有空格)set什么是gdbgdb是GNU开源组织发布的一个用于Unix/Linux的程序调试工具。与其它调试器一样,gdb可以在程序中设置断点、查看变量值,跟踪程序执行的过程。利用调试器的这些功能可以方便地
2021-05-08 12:25:10
167
原创 Linux-库
库什么是库系统提供的库的路径Linux库文件名的组成动态库和静态库之间的区别两者的载入顺序不同静态库动态库静态库的创建项目的结构静态库的使用什么是库库就是事先已经编译好的代码,经过编译之后可以直接调用的文件,从本质上来说是一种可执行代码的二进制形式,可以被操作系统载入内存中执行。系统提供的库的路径/usr/lib/usr/lib64Linux库文件名的组成前缀(lib)+ 库名 + 后缀 (.a静态库;.so动态库)libmm.a:库名为mm的静态库;libnn.so:库名为nn的动态库。
2021-05-06 16:00:49
296
转载 Linux-多文件编译
Linux多文件编译文件的创建文件的编译文件的运行头文件头文件的创建如果我们需要编译的文件包含其他的文件中的函数的时候,可以用gcc命令实现文件的创建创建第一个文件other1.cvoid welcome() { printf(“Welcome to the world of Linux\n”);} 创建第二个文件other2.cint add(int x, int y) { return x+y;}int sub(int x, int y){ return x-
2021-05-06 15:21:59
459
原创 Java-异常处理
异常处理程序错误编译错误运行时错误逻辑错误异常Throwable类中的常用方法自定义异常类程序错误编译错误因为程序没有遵循语法规则,编译程序能够自己发现并且提示我们错误的原因和位置,这个也是大家在刚接触编程语言最常遇到的问题。运行时错误因为程序在执行时,运行环境发现了不能执行的操作。逻辑错误因为程序没有按照预期的顺序和逻辑执行。异常程序运行时可能出现一些错误,比如试图打开一个根本不存在的文件等。如果置之不理,程序便会终止或直接导致系统崩溃,显然这不是我们希望看到的结果。异常处理机制就
2021-05-04 16:20:39
259
1
原创 Java-Optional
Optionaljava.util.OptionalifPresent()Void ifPresentOrElse(, )Optional filter()Optional map()Optional or()T get()其他的方法java.util.Optional为解决空引用异常引入的,用于封装单值元素的容器(single-value container),一个容器内最多只能装一个值,该值可以为空。即,基于Optional提供的一系列方法,操作封装在Optional容器中的,可能引起空引用
2021-05-04 13:24:55
200
原创 Java-Stream流
Stream什么是函数式编程java.util.stream.StreamT collect()。groupingBy()Boolean removeIf()函数式接口什么是函数式编程是一种构建程序结构的编程范式。是一种与面向对象程序设计完全不同的应用程序设计思想。在函数式编程中,函数的输出应且仅应依赖于函数的本身。即,函数的执行,不应依赖于函数外部数据的状态(闭包)。函数式编程与面向对象编程是不同场景下,分析设计应用的思考方式,无优劣之分。int x;public int multiply()
2021-05-04 11:13:44
191
2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人