- 博客(34)
- 问答 (1)
- 收藏
- 关注
原创 中央财经大学研究生入学考试 901C语言程序设计
该仓库收录了本人实现的历年编程真题,点我目前还在更新中,尽量保持一天更新一年真题。有问题欢迎提交issue探讨。
2021-10-24 00:14:35 633
原创 按字典序对字符串进行冒泡排序(C语言)
#include "stdio.h"#include "string.h"void bubble_sort(char ** pStrings);int main(void) { char strings[5][8] = {"ebadf", "qwerty", "assign", "execvp", "ghoul"}; char *pStrings[5]; int i; for (i = 0; i < 5; ++i) { pStrings[i..
2021-09-27 23:41:03 1346
原创 c语言那点事(更新ing)
总结日常学习和编程中的c语言知识点目录1、结构体成员变量中有int型指针时1、结构体成员变量中有int型指针时#include <stdio.h>#include <stdlib.h>struct ele1{ int * pn;}t1;struct ele2{ int n;}t2;struct ele3{ int * pn;}t3;int main(void) { printf("%u,%u,%u\n",si
2021-08-21 22:41:22 273
原创 golang 线程交替输出
问题描述: 使用两个goroutine交替打印序列,一个goroutinue打印数字,另一个goroutine打印字母,最终结果如下: 12AB34CD45EF78GH910IJ
2020-09-22 14:27:09 542
原创 Golang开发踩过的坑
Golang开发踩过的坑新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Mar
2020-07-15 21:15:46 571
原创 go语言后端调用以太坊rpc
任务要求:使用golang作为后端语言,获取eth(私链)中的账户信息以及创建新的账号1、启动gethgeth --identity "aaron" --datadir data0 --rpcport 8545 --rpccorsdomain "*" --port "30303" --nodiscover --nat "any" --networkid 15 --rpc --rpcapi...
2020-04-02 21:07:11 1912 1
原创 go语言调用ipfs进行文件的上传下载
项目模块要求:将通道结构体序列化后上传到ipfs,并可以按照hash地址找回jsonpackage mainimport ( "bytes" "encoding/json" "fmt" "io/ioutil" shell "github.com/ipfs/go-ipfs-api")var sh *shell.Shell//交易结构体(未来的通道)type Tran...
2020-04-01 21:35:32 3711 9
原创 稀疏矩阵进行三元组压缩存储(golang实现)
1、使用稀疏数组,来保留类似前面的二维数组(棋盘、地图等等)2、把稀疏数组存盘(文件存储),并且可以重新恢复原来的二维数组package mainimport ( "bufio" "fmt" "io" "os" "strconv" "strings" "sync")type ValNode struct { row int col int val int}...
2020-04-01 15:17:13 1060
原创 以太坊基本概念
目录1、账户(accounts) 外部账户 合约账户2、合约(contracts)3、交易(transaction)和消息(message) 交易 消息4、气(gas) gas gasPrice gasCost gasLimit gasFee1、账户(accounts) 在...
2020-01-03 21:26:21 1192
原创 以太坊发展规划
以太坊的发展规划主要分为4个阶段,每个阶段都会以硬分叉(hard forking)的方式进行,以下是这4个阶段的基本情况。第一阶段:边境(frontier)以太坊的第一个正式版本,2015年7月30日发布,该版本十分简陋,但是可以执行智能合约,支持矿工挖矿,也支持以太坊的交易。在该版本上,用户首次可以购买以太币,并在以太坊上测试自己的DAPP。第二阶段:家园(homestead)“...
2020-01-02 20:58:10 784
原创 买卖股票的最坏时机
给定一个数组,它的第i 个元素是一支给定股票第 i 天的价格。如果你最多只允许完成一笔交易(即买入和卖出一支股票),设计一个算法来计算你所能赔的最大损失。(是不是傻!?)注意你不能在买入股票前卖出股票。动态规划用来求:某个数组减去它右边的数字得到的一个数对之差,求所有数对之差的最大值。示例1:{2,4,1,16,7,5,11,9}数对之差最大值为11,是16减去5的结果...
2019-11-16 16:50:17 211
转载 广义表的深度和长度(C语言)详解
广义表的长度广义表的长度,指的是广义表中所包含的数据元素的个数。由于广义表中可以同时存储原子和子表两种类型的数据,因此在计算广义表的长度时规定,广义表中存储的每个原子算作一个数据,同样每个子表也只算作是一个数据。例如,在广义表 {a,{b,c,d}} 中,它包含一个原子和一个子表,因此该广义表的长度为 2。再比如,广义表 {{a,b,c}} 中只有一个子表 {a,b,c},因此它的长度...
2019-11-10 16:54:40 23995 3
原创 数组元素交换位置(奇数号元素在前,偶数号元素在后)
将顺序表(数组)中的元素a1,a2,a3,......,an变换为奇数号元素在前,偶数号元素在后的新表,即a1,a3,a5,...a2,a4,a6....要求尽可能高效。这里使用了数组模拟顺序表,数组首元素为A[0],顺序表首元素为a1,所以A[0]->a1;A[len-1]->an;#include<stdio.h>void Bubble_Swap(in...
2019-11-03 16:11:17 1141
原创 删除数组中指定值的元素
已知长度为n的线性表采用顺序结构,设计算法,保证时间复杂度为O(n),空间复杂度为O(1)的算法,删除线性表中元素值为item的数据元素。从笔试转为机考----->已知长度为n的数组,设计算法,保证时间复杂度为O(n),空间复杂度为O(1)的算法,删除数组中元素值为item的数据元素。#include<stdio.h>void Delete(int a[],in...
2019-10-30 16:35:03 668
原创 2016年408考研真题43题
#include<stdio.h>int setPartition(int a[],int n){ int pviot,low=0,low0=0,high=n-1,high0=n-1,flag=1,k=n/2,i; int s1=0,s2=0; while(flag){ pviot=a[low]; while(low<...
2019-10-20 19:15:59 1041 1
原创 展示整数的二进制位
题目描述大家都知道,数据在计算机里中存储是以二进制的形式存储的。 有一天,小明学了C语言之后,他想知道一个类型为unsigned int 类型的数字,存储在计算机中的二进制串是什么样子的。 你能帮帮小明吗?并且,小明不想要二进制串中前面的没有意义的0串,即要去掉前导0。输入描述:每行有一个数字n(0<=n<=10^8),表示要求的二进制串。输出描述:输出共T行。...
2019-10-19 23:20:15 221
原创 荷兰国旗问题
荷兰国旗有三横条块,自上到下的三条块颜色依次为红、白、蓝。现有若干由红、白、蓝三种颜色的条块序列,要将它们重新排列使所有相同颜色的条块在一起。本问题要求将所有红色的条块放最左边、所有白色的条块放中间、所有蓝色的条块放最右边。且时间复杂度为O(n);#include<stdio.h>typedef enum{RED,WHITE,BLUE} color;//实际为 0,...
2019-10-08 18:33:38 526
原创 C语言版双向起泡排序
奇数趟时,从前往后比较相邻的关键字,遇到逆序就交换,直到把最大的数移动到最后;偶数趟时,从后往前比较相邻的关键字,遇到逆序就交换,直到把最小的数移动到最前。#include<stdio.h>void BubbleSort(int a[],int len){//双向起泡,交替进行正反两方向的冒泡排序 int low=0;int high=len;int temp...
2019-10-08 16:29:01 1133 2
原创 C语言版快速排序
分治法进行排序:(线性递归)#include<stdio.h> int PviottTops(int a[],int low,int high){ int pviot=a[low]; while(low<high){ while(low<high && a[high]>=pviot) --high; a[low]=a[high]...
2019-10-07 23:26:20 210
原创 C语言版冒泡排序
有哨兵版,待排数组下标从1开始:#include<stdio.h>int Bubble_Sort(int a[],int n){ for(int i=1;i<=n;i++){ for(int j=n;j>i;--j){ if(a[j]<a[j-1]){ a[0]=a[j];...
2019-10-07 23:06:16 197
原创 543.二叉树的直径
给定一棵二叉树,你需要计算它的直径长度。一棵二叉树的直径长度是任意两个结点路径长度中的最大值。这条路径可能穿过根结点。示例 :给定二叉树 1 / \ 2 3 / \ 4 5 返回3, 它的长度是路径 [4,2,1,3] 或者[5,2,1,3]。注意:两结点之间的路径长度是...
2019-09-28 22:52:08 142
原创 538.把二叉搜索树转换为累加树
给定一个二叉搜索树(Binary Search Tree),把它转换成为累加树(Greater Tree),使得每个节点的值是原来的节点值加上所有大于它的节点值之和。例如:输入: 二叉搜索树: 5 / \ 2 13输出: 转换为累加树: 18 / ...
2019-09-27 23:23:56 189
原创 70.爬楼梯
假设你正在爬楼梯。需要n阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?注意:给定n是一个正整数。示例 1:输入: 2输出: 2解释: 有两种方法可以爬到楼顶。1. 1 阶 + 1 阶2. 2 阶示例 2:输入: 3输出: 3解释: 有三种方法可以爬到楼顶。1. 1 阶 + 1 阶 + 1 阶2. ...
2019-09-26 23:05:39 134
原创 121.买卖股票的最佳时机
给定一个数组,它的第i 个元素是一支给定股票第 i 天的价格。如果你最多只允许完成一笔交易(即买入和卖出一支股票),设计一个算法来计算你所能获取的最大利润。注意你不能在买入股票前卖出股票。示例 1:输入: [7,1,5,3,6,4]输出: 5解释: 在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5 。 ...
2019-09-25 23:03:45 171
原创 617.合并二叉树
给定两个二叉树,想象当你将它们中的一个覆盖到另一个上时,两个二叉树的一些节点便会重叠。你需要将他们合并为一个新的二叉树。合并的规则是如果两个节点重叠,那么将他们的值相加作为节点合并后的新值,否则不为NULL 的节点将直接作为新二叉树的节点。注意:合并必须从两个树的根节点开始。示例1:输入: Tree 1 Tree 2 ...
2019-09-24 22:54:52 139
原创 53.最大子序和
给定一个整数数组 nums,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例:输入: [-2,1,-3,4,-1,2,1,-5,4],输出: 6解释:连续子数组[4,-1,2,1] 的和最大,为6。动态规划:当前面的总和是负数的,加上去一定会使总和减小,不如从自己重新开始.例如,[-2,1,-3,4,-1,2,1,-5,4]1就不需要加...
2019-09-23 22:45:49 146
原创 21.合并两个有序链表
将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例:输入:1->2->4, 1->3->4输出:1->1->2->3->4->适用于两个无头节点的的两个链表。建立了一个头节点用来指引新链表。因为不知道L1与L2两个链表的首元素哪个小。P、Q分别是L1和L2的遍历指针,另外用一...
2019-09-21 22:42:10 175
原创 3.无重复字符的最长子串
给定一个字符串,请你找出其中不含有重复字符的最长子串的长度。示例1:输入: "abcabcbb"输出: 3解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。示例 2:输入: "bbbbb"输出: 1解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。示例 3:输入: "pwwkew"输出: 3解释: 因为无重复字符的最...
2019-09-18 23:57:34 158
原创 2.两数相加
给出两个非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照逆序的方式存储的,并且它们的每个节点只能存储一位数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0开头。示例:输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 -> 0 -...
2019-09-17 23:06:04 134
原创 136.只出现一次的数字
给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 1:输入: [2,2,1]输出: 1示例2:输入: [4,1,2,1,2]输出: 4使用异或运算:2^2^7^5^5=7 (对应二进制位相同是为0,不同时为1;所以X^0=X)...
2019-09-16 00:08:02 160
原创 truffle框架带有前端的使用
truffle框架与前端1、新建项目2、编译智能合约3、打开前端界面小结truffle框架官网提供了很多前端框架,这里我以react为例。1、新建项目新建一个项目,叫做demo3,在demo3根目录下,打开cmd,输入以下命令(初次下载时间较长,因为包含很多nodejs的包):truffle unbox react经过较长时间的下载后,会返回如下信息:√ Preparing to ...
2019-03-10 23:36:23 1783
原创 truffle框架初使用
truffle使用1、下载1.1、nodejs1.2、truffle1、下载1.1、nodejs前往nodejs官网下载,傻瓜式安装。1.2、trufflenpm install -g truffle
2019-03-08 20:55:36 3256 1
原创 Centos7中HyperLedger Fabric的安装部署
1、Fabric源码安装HyperLedger Fabric的源码托管在GitHub上,托管地址为https://github.com/hyperledger/fabric工具编译需要用倒Go语言环境,源码目录会放在 $GOPATH路径下可以通过Git命令下载源码,或者go get命令获取,这里使用go get命令go get github.com/hyperledger/fabric...
2019-03-08 19:09:45 2574 1
原创 centos7中Fabric基本环境部署
centos7中Fabric基本环境部署1、环境整理1.1更新本地依赖2、Docker安装2.1、卸载旧版本2.2、在线安装Docker CE2.3、Docker启动及常见命令3、Docker-Compose安装3.1、在线安装Docker-Compose4、Go语言环境安装4.1、配置Go语言环境变量小结1、环境整理Fabric的节点通过Docker容器来运行,启动Fabric网络中的节点需...
2019-03-07 20:24:28 2292 1
空空如也
一道restapi面试题,用java解决
2021-07-25
TA创建的收藏夹 TA关注的收藏夹
TA关注的人