- 博客(20)
- 收藏
- 关注
原创 树(实现树的从上到下,从左到右遍历)
具体描述:从上往下打印出二叉树的每个节点,同层节点从左至右打印。整体思想:借助一个队列进行实现。#include <iostream>#include <vector>#include <queue>using namespace std;struct TreeNode{ int val; struct TreeNode* l...
2019-09-18 16:52:29
598
原创 LinkedHashMap 实现LRU 缓存
设定最大缓存空间 MAX_ENTRIES 为 3; 使用 LinkedHashMap 的构造函数将 accessOrder 设置为 true,开启 LRU 顺序; 覆盖 removeEldestEntry() 方法实现,在节点多于 MAX_ENTRIES 就将最近最久未使用的数据移除 import java.util.LinkedHashMap;import java.util.Map;...
2019-08-22 20:36:42
124
原创 Ubuntu安装JDK1.8(手动解压JDK压缩包)
1. 官网下载JDKhttps://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html2. 解压缩(下载的版本jdk-8u211-linux-x64.tar.gz)创建目录sudo mkdir /usr/lib/jvm解压缩到此目录sudo tar -zxvf jdk-8u2...
2019-06-19 15:01:08
3962
4
原创 Qt5.8+VS2015生成可执行文件详解
因为写大作业,老师要求交一个可执行文件,折腾了半天具体步骤如下:1.在vs2015中已release方式调试程序,具体如下图执行完成之后,在我的项目中ArcBall(项目名称)/x64/release文件夹下生成一个exe文件,此exe文件可以复制到任一位置。2.使用命令行自动生成所需的dll,并将其复制到同exe文件同一文件夹下。回车会自动生成所需dll。切换到相应的文件...
2019-05-05 20:05:49
1763
1
原创 Ubuntu报错:Could not get lock /var/lib/dpkg/lock -open
新装的Ubuntu系统,在用apt-get安装软件时总是报:E:Could not get lock /var/lib/dpkg/lock -open 的错误。解决方法:sudo rm /var/cache/apt/archives/locksudo rm /var/lib/dpkg/lock之后正常安装就可以了。但后续又遇到了错误:E:dpkg was interr...
2019-04-12 11:05:35
479
原创 冒泡排序---经典排序算法
冒泡排序Bubble Sort原理:从前往后两两比较,大值后移,直到比较到最后。举例说明:现有数组int a[]={ 7, 5, 2, 8, 4}经过总结,N个元素要经过N-1趟排序,每趟排序比较次数与 趟数的和为N,第i趟排序的比较次数为(N-i)所以可以用双重循环进行实现此经典算法,外层循环用来控制趟数,内层循环用来控制每一趟比较的次数。冒泡排序...
2019-04-09 21:31:03
155
原创 快排算法
说起快排,其实是很熟悉的一个算法了,对于自己而言,只是不断的在会了忘,看了会的循环往复中。今天决定把这个算法彻底的搞清楚,铭记在心,故写此文章。快排的基本思路:例如给定数组a[],如下表所示:下标i 0 1 2 3 4 5 6 7 a[i] 3 6 1 2 8 9 3 7 第...
2019-04-09 20:40:36
250
原创 UTXO模型和Account模型
目录UTXO模型优点:缺点:Account模型优点:缺点:总结UTXO模型和ACCOUNT模型是区块链中记录保存的两种方式。UTXO模型Unspent Transaction Output 未经使用的交易输出。比特币采用的是此模型。在UTXO模型中,交易只代表了UTXO集合的变更。如下图所示:优点:计算在链外,节点只做验证。计算的负担交由钱包进...
2019-04-09 18:20:36
583
原创 Linux下配置Java环境
第1步:下载JDK访问链接:www.oracle.com/technetwork/java/javase/downloads/下载对应的linux版本,如果通过虚拟机中的浏览器下载,会下载在home/Download目录下。第2步:解压文件跳转到Download目录下,使用命令解压文件tar zxf jdk-10.0.2_linux-x64_bin.tar.gz第3步:...
2018-08-15 14:15:05
131
原创 Ubuntu修改环境变量后命令不可用的解决办法
方法一:导入临时变量(但是重启虚拟后会失效)#export PATH=$PATH:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin方法二:根本方法(普通用户+root用户都适用)解决办法:第一步:输入以下命令export PATH=/usr/bin:/bin第二步:输入ls -a ,可以找到...
2018-08-15 11:10:02
4752
1
原创 区块链入门学习笔记(二)
1. 什么是区块链? Blockchain 区块链是由节点参与的分布式数据库系统。 区块链是由一串使用密码学方法产生的数据块组成的,每个区块都包含了上一个区块的哈希值,从创始区块开始连接到当前区 块,从而形成块链。 “链”指的是一个庞大而完整的数据库。(对应于比特币的账本) “区块”则是这个大账本的组成部分,即在固定时间段内所有交易的记录。 区块链就是一种...
2018-05-19 16:48:00
299
原创 区块链入门学习笔记(一)
比特币的原理和运行机制1.比特币产生的动机以物易物实物货币(黄金)符号货币(纸币)中央系统虚拟货币分布式虚拟货币(中本聪)2.基础设施搭建(1)账簿公开机制 账簿不记录余额,只记录交易。 账簿由私有改为公开。(2)身份与签名机制(公钥加密系统) 不使用真实身份交易,使用一个唯一的代号进行交易 保密印章 + 印章扫描器(3)成立虚拟矿工组织(挖...
2018-05-15 18:55:18
536
原创 排序-简单选择排序
简单选择排序 算法思想: 设待排序的记录存放在数组a[]中,数组长度为n。通过n-1趟排序,将a变成一个有序的数组。 (1)第一趟从a[0]开始,通过n-1次比较,从n-1个关键字中找出最小的记录,记做a[k],将a[0]和a[k]交换。 (2)第二趟从a[1]开始,通过n-2次比较,从n-2个关键字中找出最小的记录,记做a[k],将a[1]和a[k]交换。 (3)第i趟从a[i-1]开始
2017-12-10 18:14:58
451
原创 队列操作的实现-链式存储
#include <iostream>#include <stdio.h>#include <malloc.h>using namespace std;//链式队列结点typedef struct Node{ int data; struct Node *next;}Node;//队列typedef struct { Node *front,*rear;}L
2017-12-08 14:40:53
221
原创 循环队列操作的实现-顺序存储结构
#include <iostream>#include <stdio.h>#define maxsize 50using namespace std;//循环队列typedef struct{ int data[maxsize]; int front,rear;}SqQueue;//初始化void init(SqQueue &q){ q.front=q.rear=
2017-12-08 11:47:56
578
原创 链栈的操作
//链栈的基本操作#include <iostream>#include <stdio.h>#include <malloc.h>typedef struct node{ int data; struct node *next;}node,*linkstack;//初始化栈void init(linkstack *top){ *top=NULL;}//入栈voi
2017-12-07 22:32:52
172
原创 顺序栈的操作
//顺序栈的操作#include <iostream>#include <stdio.h>#include <malloc.h>#define maxsize 50using namespace std;typedef struct{ int data[maxsize]; int top;}SqStack;//初始化栈void init(SqStack *s){
2017-12-07 22:22:19
201
原创 Python的安装
win10系统+Python3.6.31、官网下载Python,点击打开链接https://www.python.org/,下载相应的版本2、点击.exe的Python文件,进入安装3、安装完毕后,配置Python环境变量双击Path这一行,或者点击编辑4、测试Python是否安装成功如图则是安
2017-10-24 16:55:57
191
原创 杭电acm-1040
#include<iostream>using namespace std;int main(){int n,T,t;int arr[1000];cin>>T;//组数while(T--){cin>>n;for(int k=0;k<n;k++)cin>>arr[k];//使用冒泡排序开始for(int i=0;i<n;i++){for(int j=i+1;j<n;j++)
2017-03-13 21:10:10
566
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人