- 博客(344)
- 收藏
- 关注
原创 什么是无偿损失?
流动性提供者可以是能够向 Uniswap 交易合约提供等值 ETH 和 ERC-20 代币的任何人。作为回报,他们从交易所合约中获得代币,这些代币可用于随时提取他们在流动性池中的份额。每当有人在交易所进行交易时,交易者都会支付 0.3% 的费用,该费用将添加到流动性池中。由于没有铸造新的流动性代币,因此可以在所有现有流动性提供者之间按比例分配交易费用。每当另一个交易所的价格发生变化,该交易所和 Uniswap 之间的价格差异将产生套利机会。
2024-10-08 14:16:44
263
原创 以太坊学习
区块(block) 是多个合法签名的 交易的有序集合。任何一个区块都包含几部分:其前一区块的哈希值、当前区块的哈希值、一个计算工作量的参数、一个时间戳以及该区块包含的交易列表的哈希值。在区块模型中,交易列表会用一棵树型结构来表示,并将该树的哈希值写入区块头进行防伪校验。哈希值的数据量较少,方便网络传输。区块是 串联 成区块链的,一个区块包含了数笔交易。
2024-09-12 14:48:57
1277
原创 tokio 学习
/ future执行成功返回的类型///////////////////////////////////////// poll方法被异步运行时调用,用来检查异步任务是否已经完成// 返回的Poll是一个枚举,其中Poll::Pending表示还未完成,Poll::Ready(value)表示已经完成异步任务 h1 中的Future一直返回,这意味这个Future将永远无法执行。// Context包含异步任务的上下文,可以用来唤醒当前的任务。
2024-04-17 17:28:00
1356
原创 rust 学习笔记(13-19)
实现next方法src/lib.rs// 实现一个 Iterator trait} else {None#[test]assert_eq!assert_eq!assert_eq!assert_eq!assert_eq!assert_eq!#[test].map(|(a, b)| a * b) // zip得到的元素是元组,因此这里的参数是元组的形式.sum();assert_eq!(18, sum);
2024-04-17 17:27:42
1349
原创 rust 学习实践 --- web服务器
这两者都是 请求 - 响应(request-response)协议,也就是说,有 客户端(client)来初始化请求,并有 服务端(server)监听请求并向客户端提供响应。每一个线程会从队列中取出一个请求,处理请求,接着向队列索取另一个请求。如果每一个线程都在响应慢请求,之后的请求仍然会阻塞队列,不过相比之前增加了能处理的慢请求的数量。线程池中有固定数量的等待线程,当新进请求时,将请求发送到线程池中做处理。单线程服务器在遇到慢请求时,其他请求都排在慢请求之后,这时需要使用多线程技术进行改进。
2024-04-07 10:00:41
547
1
原创 rust学习笔记(8-12)
/ 对数据范围进行验证panic!// 读取接口 (getter)self.valuex: T,y: T,// 参数 T 放在impl后边,表示在类型 T 上实现方法// get_x方法是针对所有T类型都可以调用的fn get_x(&self) -> &T { // 第一个参数为self,因此是方法&self.x// 具体类型不需要在 impl 后声明// 而distance_from_origin()方法只有参数为 f32 时才能调用println!println!
2024-03-19 15:22:18
1478
2
原创 rust学习笔记(1-7)
在一个 crate 内,对代码进行分组增加可读性,易于复用控制项目(item)的私有性,public,privatemod 关键字可嵌套可包含其他项(struct、enum、常量、trait、函数等)的定义。
2024-03-16 10:34:44
1440
3
原创 Ubuntu 22.04 编译安装 Qt mysql驱动
参考自系统版本MySQL 肯定要先安装上, 我安装的是然后安装1.首先找到QT的源码目录 , 例如rain是你当前的用户名, 路径也是根据你自己安装的Qt路径来版本号(我的是5.15.2)下如果没有Src目录, 可以考虑重装 Qt 或者更新下载 Src2.修改 mysql.pro 文件第 6 行的代码直接注释掉然后添加两行代码, 这两行代码根据你安装的目录确定例如我的(1) 执行命令可以看到路径(2) 执行命令3.点开 pri 文件, 然后注释掉第 4 行代码即可4. 在。
2024-01-08 23:18:16
1497
4
原创 MySQL 学习笔记(刷题篇)
ONLY_FULL_GROUP_BY的语义就是确定select target list中的所有列的值都是明确语义,因此这里的coalesce是不好使的,可以通过any_value()函数来抑制ONLY_FULL_GROUP_BY值被拒绝,题目:按年月进行分组,统计每组的用户id个数(也就是这个月有多少活跃用户),统计每组的用户活跃天数的平均值(总天数/总人数),利用这个性质我们可以轻松统计出值不为 NULL 的记录,再统计总记录,即可得到值为 NULL 的记录。,str:要处理的字符串,delm:分隔符。
2023-11-30 15:17:08
1592
2
原创 套接字的多种可选项
套接字可选项分为IPPROTO_IPSOL_SOCKETIPPROTO_IP:IP 协议相关事项;:TCP 协议相关事项;SOL_SOCKET:套接字相关的通用可选项。下表列出了其中部分可选项,这些可选项无需立即掌握,用到什么学什么即可。
2023-11-13 16:36:02
427
原创 MySQL 学习笔记
视图是一种虚拟存在的表, 它本身并不包含数据, 而是作为一个查询语句, 保存在数据字典中, 当我们查询视图的时候, 它会根据查询语句的定义, 来动态地生成数据。2)配置文件的监听地址问题, 默认 MySQL 服务只监听本地 IP 地址, 外部是无法连接 MySQL 服务的, 把配置文件的。数据大类型: 数值, 日期, 时间类型, 字符串类型, JSON 类型, 空间类型。有的时候我们需要使用一个查询的结果作为另一个查询的条件, 这个时候就可以使用子查询了.
2023-11-09 09:58:35
1583
原创 Git 学习笔记
可以把分支看作是代码库中的不同版本, 可以独立存在并且有自己的提交记录, 适合团队协作和开发管理多个开发人员可以在自己的分支上进行开发工作, 最后再合并到主线代码库中可以在一个分支上进行新功能开发, 或者建立一个问题修复的分支来处理一些bug和缺陷, 让主线代码仓库处于一个随时可用的比较稳定的状态, 而不会影响到其他功能的开发和测试,gitbranchgitbranch查看所有分支gitbranchbranchname。
2023-11-09 09:57:35
306
原创 十大排序算法C++实现
假定在待排序的记录序列中,存在多个具有相同的关键字的记录,若经过排序,这些记录的相对次序保持不变,即在原序列中,A1=A2,且A1在A2之前,而在排序后的序列中,A1仍在A2之前,则称这种排序算法是稳定的;否则称为不稳定的。
2023-11-06 23:24:07
158
原创 C++11 std::funcion 和 std::bind 学习笔记
百度百科定义:回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数时,我们就说这是回调函数。回调函数不是由该函数的实现方直接调用,而是在特定的事件或条件发生时由另外的一方调用的,用于对该事件或条件进行响应。把一段可执行的代码像参数传递那样传给其他代码,而这段代码会在某个时刻被调用执行,这就叫做回调。因为回调函数本身就是通过函数指针实现的,使用对象包装器可以取代函数指针的作用。
2023-11-03 17:16:29
207
原创 C++11 右值引用学习笔记
通过右值引用的声明,该右值又“重获新生”,其生命周期与右值引用类型变量的生命周期一样,只要该变量还活着,该右值临时量将会一直存活下去。在C++中在进行对象赋值操作的时候,很多情况下会发生对象之间的深拷贝,如果堆内存很大,这个拷贝的代价也就非常大,在某些情况下,如果想要避免对象的深拷贝,就可以使用右值引用进行性能的优化。右值引用具有移动语义,移动语义可以将资源(堆、系统对象等)通过浅拷贝从一个对象转移到另一个对象这样就能减少不必要的临时对象的创建、拷贝以及销毁,可以大幅提高C++应用程序的性能。
2023-11-02 12:45:37
233
原创 C++11 lambda表达式
lambda表达式定义了一个匿名函数,并且可以捕获一定范围内的变量。其中capture是捕获列表,params是参数列表,opt是函数选项,ret是返回值类型,body是函数体。mutableexceptionconstexprlambda 表达式的大致原理:每当你定义⼀个 lambda 表达式后,编译器会自动⽣成⼀个匿名类(这个类重载了()运算符),我们称为闭包类型(closure type)。那么在运行时,这个 lambda 表达式就会返回⼀个匿名的闭包实例,其实⼀个右值。
2023-11-01 22:10:07
219
原创 C++ 模板学习笔记
类模板作用:建立一个通用类,类中的成员数据类型可以不具体制定,用一个虚拟的类型来代表。没有区别,typename 还有个作用是使用嵌套依赖类型。比如传入类型为char的参数自动转换为 int。
2023-11-01 18:46:59
220
原创 指针的引用 *&
指针p1 p2地址:000000241AB8F708 000000241AB8F728。指针p1 p2地址:000000241AB8F6A0 000000241AB8F6A8。指针p1 p2地址:000000D1371DFA78 000000D1371DFA98。指针p1 p2地址:000000D1371DFA78 000000D1371DFA98。结论:通俗来讲就是对指针进行引用,没有进行拷贝指针,在函数体内对指针的修改是全局的。
2023-11-01 18:33:22
115
原创 E - Many Operations (按位考虑 + dp思想记录操作后的结果
次操作后的结果,但是按位考虑,开始操作时每一位只能是。思想记录下来每一位按顺序操作后的结果。,并且每次操作顺序每次都是一样的。
2022-08-02 10:13:18
321
原创 E - Distance Sequence (前缀和优化dp
时再改变转移方程,对于我这种菜鸡根本做不到啊,于是就出现了下边的写法,就可以完全不用考虑。的值了,只需要保证每次转移都合法即可(也就是。过程就可以不用单独特判了,但是也要想到。的时情况,然后修改转移方程。显然可以维护一个前缀和优化。...
2022-08-01 18:17:02
345
原创 D - I Hate Non-integer Number (选数的计数dp
代码】D-IHateNon-integerNumber(选数的计数dp。
2022-08-01 07:47:18
433
原创 图论 最短路算法、最小生成树算法
本文代码无说明均为 matlabmatlabmatlabcode:单源最短路—迪杰斯特拉算法code:全源最短路—floyd算法code:最小生成树prim算法参数矩阵 aaa 的初始化code:kruskal算法矩阵初始化,只需要赋值上三角即可code:............
2022-07-02 12:11:43
344
4
原创 例题 非线性整数规划
题目如下一般采用蒙特卡洛法(随机取样法)虽然计算最优解不太现实,但是应用概率理论可以证明,在一定的计算量的情况下,完全可以得出一个满意解1)首先编写 MMM 文件 mengte.mmengte.mmengte.m 定义目标函数 fff 和约束向量函数 ggg,程序如下注意到 ggg 的本质是一个 5×15\times15×1 的列向量2)编写 MMM 文件 work.mwork.mwork.m 求解问题答案lingo解法......
2022-07-01 15:19:39
1607
原创 简单线性规划问题
因为标准型为 minminmin求最大值需要给函数加负号变成求最小值在函数中写成 −c-c−c 即可因为条件约束中没有等式,所以 aeq,beqaeq,beqaeq,beq 用 [],[][ \quad ],[ \quad ][],[] 替换即可
2022-06-30 12:01:56
220
原创 求简单微分方程
求解一介常微分方程 dydt=ay\frac{dy}{dt}=aydtdy=ay增加条件,初值 y(0)=5y(0) = 5y(0)=5求解二阶常微分方程 d2ydu2=ay\frac{d^2y}{du^2}=aydu2d2y=ay增加条件, y(0)=b,y′(0)=1y(0) = b, y'(0) = 1y(0)=b,y′(0)=1求解常微分方程组dydt=zdzdt=−y\frac{dy}{dt}=z\\\frac{dz}{dt}=-ydtdy=zdtdz=−y...
2022-06-30 11:45:52
141
1
原创 牛客月赛52 E题
分组求对数和思路:两个小朋友手中数加和 >=k>=k>=k 即可很容易想到遍历累加答案当前遍历到的小朋友手中数字为 xxx,在之前的所以数中满足 y>=k−xy>=k-xy>=k−x 都会产生贡献统计满足条件的 yyy 看起来不是很好想不等式变形 −y=1code:......
2022-06-19 18:22:52
196
2
原创 L2-030 冰岛人 (25 分)
L2-030 冰岛人 (25 分)坑点:两个人维京人可能不是同辈的需要一方搜到顶部,另一方搜 444 代以内的因为可能搜到顶部的一方辈分更大,所以搜交换搜索顺序再搜一次就可以了还有一个细节就是建边的时候只需要建维京人内部的就好了,不能涉及普通人code:#include<bits/stdc++.h>#define endl '\n'#define ll long long#define ull unsigned long long#define ld long double
2022-04-21 12:52:45
450
原创 区间贪心问题
讲解博客P1803 凌乱的yyy / 线段覆盖题意:给定 nnn 个区间,从中尽可能选出多的区间而不相交思路:按照右端点靠前排序code:#include<bits/stdc++.h>#define endl '\n'#define ll long long#define ull unsigned long long#define ld long double#define all(x) x.begin(), x.end()#define mem(x, d) memse
2022-04-12 18:56:00
180
原创 L3-017 森森快递 线段树+区间贪心
L3-017 森森快递 (30 分)思路:类似于这个题先贪心的将区间排序保证按顺序处理区间可以得到最优解,然后对于每个区间查询区间最小值 MinMinMin,Min>0Min>0Min>0 则区间可以选择修改,修改操作为区间所有数减去最小值这个区间贪心我是真的不理解,贪心好难code:#include<bits/stdc++.h>#define endl '\n'#define ll long long#define ull unsigned long lon
2022-04-12 10:56:49
397
原创 L3-020 至多删三个字符 (计数dp,需要方案去重
L3-020 至多删三个字符 (30 分)思路:线性dpcode:#include<bits/stdc++.h>#define endl '\n'#define ll long long#define ull unsigned long long#define ld long double#define all(x) x.begin(), x.end()#define mem(x, d) memset(x, d, sizeof(x))#define eps 1e-6usi
2022-04-12 07:48:34
189
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人