- 博客(183)
- 资源 (24)
- 问答 (4)
- 收藏
- 关注
原创 Java25 新特性介绍
Java 25带来多项重要更新:1. 正式版特性包括作用域值(替代ThreadLocal)、密钥派生函数API、紧凑源文件语法、灵活的构造函数体、分代式Shenandoah GC等;2. 预览功能新增模式匹配支持原始类型、模块导入声明、结构化并发API优化;3. 实验性特性包含向量API(第10孵化器)和JFR CPU时间分析。这些改进增强了并发编程、安全性和开发体验,同时为AOT编译等未来特性奠定基础,延续了Java在性能与现代化方面的演进趋势。
2025-10-08 22:07:29
930
原创 基于以太坊的Dao治理系统
本文实现了一个基于Solidity的链上治理系统,包含三个核心合约:Box.sol(简单存储合约,仅所有者可修改)、GovToken.sol(治理代币合约,支持投票功能)和MyGovernor.sol(治理主合约,集成提案、投票和执行功能)。系统采用1周投票周期、4%法定投票门槛等参数,通过Timelock机制确保提案安全执行,实现了完整的去中心化治理流程。
2025-10-01 23:16:19
781
原创 智能合约的更新与迭代
ERC1967标准实现智能合约可升级性 摘要: ERC1967是以太坊代理合约标准(EIP-1967),通过定义固定存储槽解决智能合约升级时的存储冲突问题。标准规定三个关键存储槽:实现合约地址(IMPLEMENTATION_SLOT)、管理员地址(_ADMIN_SLOT)和Beacon地址(_BEACON_SLOT)。实践采用UUPS升级模式,通过代理合约指向逻辑合约,当需要升级时部署新逻辑合约并更新代理合约引用。
2025-09-28 15:36:31
599
1
原创 基于以太坊的稳定币实现
本文介绍了一种基于EVM的稳定币DSC实现方案,由两个核心合约组成:DecentralizedStableCoin(DSC代币合约)和DSCEngine(系统管理合约)。DSC代币采用1:1美元锚定机制,仅允许DSCEngine合约进行铸币和销毁操作。DSCEngine通过超额抵押机制(支持WETH/WBTC等抵押物)维持系统稳定性,包含存款/赎回、铸币/销毁、清算等功能。其中健康因子(healthFactor)公式确保抵押率,当低于1时将触发清算机制,清算人可获得10%奖励。系统采用模块化设计,实现了去中
2025-09-22 16:22:23
1185
原创 区块链--表情变化的NFT
动态情绪NFT项目 该项目实现了一个可转换情绪状态的NFT,允许用户在"开心"和"悲伤"两种状态间切换。 核心功能: 完全链上存储两种情绪图片(s_happySvgUri和s_sadSvgUri) 免费铸造NFT,默认状态为"开心" NFT持有者可调用flipMood()函数切换情绪状态 技术实现: 使用ERC721标准 通过Base64编码实现完全链上元
2025-09-17 01:01:10
496
原创 区块链—NFT介绍及发行
本文介绍了NFT(非同质化代币)的基本概念及其技术实现。NFT基于区块链技术,为数字资产提供独特所有权证明。文章详细解析了NFT发行合约的代码实现,包括构造函数、铸币函数和元数据查询等核心功能,并演示了如何通过IPFS存储NFT关联的数字内容。此外,还介绍了去中心化存储协议IPFS的工作原理。最后通过实际案例展示了NFT的创建和验证过程,包括在Remix中部署合约并在以太坊钱包中查看铸造的NFT。
2025-09-07 20:30:33
1336
原创 区块链-ERC20代币发行逻辑详解
本文介绍了ERC20代币合约的核心功能实现。主要内容包括:代币元数据(名称、符号、小数位、总量)、余额与授权映射表、关键事件(转账、授权、销毁)。重点讲解了转账逻辑的实现,包括内部转账函数的安全检查、授权转账机制以及带通知的授权功能。此外还介绍了代币销毁功能,可以主动销毁或经授权销毁他人代币,实现通缩效果。合约通过严格的余额检查和转账验证确保资金安全,并提供了完整的ERC20标准功能接口。
2025-09-07 00:36:44
487
原创 Ethereum虚拟机
全局状态通过 Merkle Patricia Trie(MPT) 组织,确保高效、可验证。预编译合约是由以太坊内置、预先优化好的常用功能模块,具有固定地址。指令集定义了以太坊虚拟机(EVM)能理解并执行的所有操作。代码是部署在以太坊合约账户上的字节码(Bytecode)。全局状态表示以太坊上所有账户(普通地址和合约地址)的当前。定价策略定义了每种操作所需消耗的 Gas 量。每次交易或合约调用都有自己独立的执行环境。这些状态只在执行期间存在,执行完成后销毁。
2025-04-21 02:08:35
850
原创 Solidity入门实战(捐赠与提取)—web3
在这个项目中,我们建立一个小型智能合约应用,他允许用户向合约地址捐赠,允许合约所有者从合约中提取余额;并且还设定了捐赠的金额门槛;针对直接对地址进行的捐赠行为,我们也予以记录。
2025-04-08 20:31:13
1209
转载 以太坊虚拟机EVM(官方文档)
以太坊虚拟机 EVM 是智能合约的运行环境。它不仅是沙盒封装的,而且是完全隔离的,也就是说在 EVM 中运行代码是无法访问网络、文件系统和其他进程的。甚至智能合约之间的访问也是受限的。
2025-04-08 19:47:56
215
原创 Solidity基础入门2(概念介绍)—web3
在 Solidity 中,constant 和 immutable 都用于声明不会改变的变量,可以节省 Gas,是智能合约开发中的重要优化手段 ✅。
2025-04-08 00:51:24
961
原创 携程后端JAVA面试汇总
现在 offer 的情况是怎么样的?现在已经进入实习的尾声了,看你 offer 不是很多,是因为开始的比较晚吗?主要负责集团中间件的开发,比如数据库的中间件等等,能学习到中间件的相关知识。当你接受一个新的任务时,你会先做什么再做什么,你处理工作的思路是什么(逻辑顺序)string的split要正则表达式,我不会还是面试官教我的。携程英语测评的作文部分在之前的文章里,感兴趣的同学可以去看看。看你简历上算法相关的还挺多的,为什么会想选择后端呢?你觉得作为一个后端,开发的过程中需要考虑哪些问题呢?
2024-10-21 08:30:00
1348
原创 leetcode热题100.编辑距离
给你两个单词word1和word2请返回将word1转换成word2所使用的最少操作数。3horse -> rorse (将 'h' 替换为 'r')rorse -> rose (删除 'r')rose -> ros (删除 'e')5intention -> inention (删除 't')inention -> enention (将 'i' 替换为 'e')enention -> exention (将 'n' 替换为 'x')
2024-10-13 18:25:59
646
原创 leetcode热题100.最长公共子序列
给定两个字符串text1和text2,返回这两个字符串的最长的长度。如果不存在,返回0。一个字符串的是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何字符)后组成的新字符串。"ace""abcde""aec""abcde"两个字符串的是这两个字符串所共同拥有的子序列。3最长公共子序列是 "ace" ,它的长度为 3。3最长公共子序列是 "abc" ,它的长度为 3。0两个字符串没有公共子序列,返回 0。text2。
2024-10-01 10:46:12
699
原创 leetcode热题100.最小路径和-多维动态规划
我们发现左侧和上面的格子只有一种走法,那就是从起点出发走到这个点;我们先初始化左侧和上面的棋子的步数。我们观察棋盘,定义 dp[i][j] 为从起点走到[i][j]这个格子的最小步数。,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。因为路径 1→3→1→1→1 的总和最小。右下角的格子对应的dp值就是我们最终答案。每次只能向下或者向右移动一步。给定一个包含非负整数的。
2024-09-22 08:30:00
404
原创 leetcode热题100.最长回文子串(动态规划解法)
给你一个字符串s,找到s中最长的 回文子串。"bab""aba" 同样是符合题意的答案。
2024-09-22 08:15:00
661
原创 git推送错误:Failed to connect to github.com port 443
今天在push代码到github的时候遇到了错误:fatal: unable to access 'https://github.com/ShangyiAlone/FacemaskDetection.git/': Failure when receiving data from the peer网上搜了下教程,是开启梯子的时候代理服务器的问题,开启梯子的时候电脑设置中也开启了代理服务器,如果git config没有配置对应的端口,就会报错。
2024-08-10 13:49:23
735
原创 leetcode热题100.不同路径(多维动态规划)
一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。问总共有多少条不同的路径?示例 1:示例 2:输入:m = 3, n = 2输出:3示例 3:示例 4:提示:我们定义 dp[i][j] 为 到达 [i][j]所需要的路径总数,我们发现矩形上边和左边的格子都只有一种方式可以到达,我们初始化这些 dp[i][j] 为1,我们观察其他点,发现了一个规律:dp[i][j
2024-08-10 12:59:28
515
原创 基于yolov8的口罩检测模型
本项目基于yolov8对图像进行训练,可以检测戴口罩的人与没有带口罩的人的图片和视频,除此之外,还提供了数据分析界面,支持检测过的信息转化为excel,信息可视化等功能。
2024-07-28 17:00:57
698
原创 leetcode热题100.最长有效括号(双向遍历解法)
今天给大家带来一道leetcode经典题,最长有效括号,本文将介绍双向遍历解法,希望对你有所帮助。给你一个只包含'('和')'的字符串,找出最长有效(格式正确且连续)括号子串的长度。
2024-07-28 10:54:04
1126
2
原创 leetcode热题100.最长有效括号(动态规划完结篇)
今天给大家带来一道leetcode经典题,最长有效括号,本文将介绍动态规划解法解法,希望对你有所帮助。给你一个只包含'('和')'的字符串,找出最长有效(格式正确且连续)括号子串的长度。
2024-07-28 10:48:08
514
原创 leetcode热题100.分割等和子集(动态规划)
我选择使用动态规划的方法来解题。我们需要判断是否可以将数组分割成两个子集,使得这两个子集的和相等。这个问题可以转化为在数组中找到一个子集,使得其和等于数组总和的一半。
2024-07-17 08:36:14
578
原创 leetcode热题100.乘积最大子数组(动态规划进阶)
给你一个整数数组nums,请你找出数组中乘积最大的非空连续子数组(该子数组中至少包含一个数字),并返回该子数组所对应的乘积。测试用例的答案是一个32-位整数。
2024-07-17 08:27:01
462
原创 leetcode热题100.最长递增子序列(动态规划大成)
haloe大家好,今天给大家分享一道动态规划的常考题,经常出现在大厂面试手撕过程中。给你一个整数数组 nums ,请你找出数组中乘积最大的非空连续 子数组 (该子数组中至少包含一个数字),并返回该子数组所对应的乘积。测试用例的答案是一个 32-位 整数。
2024-07-16 08:44:24
391
原创 携程Java后端实习一面
携程的面试比较注重八股文和项目,算法相关没有字节腾讯严厉,大家参加携程的技术岗面试需要重视八股文和项目细节,要学会深挖项目,希望大家早日oc😊👍。
2024-07-16 08:15:00
1373
原创 leetcode热题100.单词拆分(动态规划进阶)
最近参加工作比较忙,抽出时间分享一篇题解,希望对大伙有帮助🎈🎈今天分享一道动态规划的题目,大家快刷起来吧🦾🦾Problem:给你一个字符串 s 和一个字符串列表 wordDict 作为字典。如果可以利用字典中出现的一个或多个单词拼接出 s 则返回 true。注意:不要求字典中出现的单词全部都使用,并且字典中的单词可以重复使用。示例 1:输入: s = “leetcode”, wordDict = [“leet”, “code”]输出: true。
2024-07-12 09:00:00
1424
原创 leetcode热题100.零钱兑换(动态规划)
今天给大家分享一道动态规划的常考题,零钱兑换,很有趣的动态规划题目,希望可以对大家找工作过程中起到帮助,帮助大家拓展下思维给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。计算并返回可以凑成总金额所需的 最少的硬币个数。如果没有任何一种硬币组合能组成总金额,返回 -1。你可以认为每种硬币的数量是无限的。示例 1:输入:输出:3 解释:11 = 5 + 5 + 1示例 2:输入:coins = [2], amount = 3 输出:-1。
2024-07-07 14:09:40
1079
原创 数组,链表,红黑树介绍以及性能对比实验
以前学了数组,链表,红黑树的相关知识,今天用Java对它们三者在插入,删除,查找等方面做一个性能对比测试,今天分享给大家😊。
2024-06-25 15:12:16
816
原创 通过分离有色和无色pdf页面减少打印费
该工具是我认识的一位中科大的大佬在本科毕业的时候做的一个小工具,去打印店打印全彩的毕业论文的话会比较贵,他想到有没有一种方案可以实现有彩色页面的pdf和没有彩色页面的pdf分开打印,前者打印彩色,后者打印黑白,这样做的话可以节约很多打印彩色pdf页面的钱,然后这位大佬就做了这样一个小工具,省了一笔打印费,,我这里介绍下其大致的代码逻辑。
2024-06-25 12:28:47
1594
2
原创 基于yolov5和desnet的猫咪识别模型
前段时间给学校的猫咪小程序搭建了识猫模型,使用了yolo和densenet分类模型,可以通过猫咪的照片辨别出是那只猫猫,这里分享下具体的方案,先看效果图:源代码在文末。
2024-05-26 08:45:00
2900
3
原创 leetcode热题100.完全平方数(动态规划进阶)
给你一个整数 n ,返回 和 为 n 的完全平方数的最少数量 。完全平方数 是一个整数,其值等于另一个整数的平方;换句话说,其值等于一个整数自乘的积。例如,1、4、9 和 16 都是完全平方数,而 3 和 11 不是。
2024-05-22 22:18:43
1012
原创 leetcode热题100.打家劫舍(动态规划进阶)
你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。给定一个代表每个房屋存放金额的非负整数数组,计算你 不触动警报装置的情况下 ,一夜之内能够偷窃到的最高金额。示例 1:示例 2:这是动态规划中的典型的“选与不选”的问题我们先讨论一般的情况,对于小偷而言,在偷取的过程中,每面临一个房子,小偷都有选和不选两种选择。对于小偷而言,此时的最优解是从两种情况中选一种,由这样的情况我们定
2024-04-20 09:49:21
738
原创 leetcode热题100.杨辉三角(动态规划入门)
示例 1:示例 2:我们可以根据题意,很轻松的发现这样一个规律:对于第i行,这一行的第一个数和最后一个数都是1,对于这中间的数,设这个数为 row[i][j] ,那么他的值其实可以用下面的公式推导出来:row[i][j]=row[i−1][j]+row[i−1][j−1]row[i][j] = row[i-1][j] + row[i-1][j-1]row[i][j]=row[i−1][j]+row[i−1][j−1]如果单纯的看金字塔的话可能不是很直观,我这里给大家画一个图,更加直观一点根据这样的关系,
2024-04-20 08:45:00
1323
1
原创 校园猫咪小程序
今天来给大家分享下这个项目,希望大家在学习后也能给自己的学校开发一个猫猫小程序,或者将这个小程序用作毕设或者课设之类的,也可以作为前端找工作的项目。
2024-04-14 23:59:22
696
原创 leetcode热题100.爬楼梯(从二进制到快速幂)
假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?示例 1:示例 2:在上一讲中,我们讲解了递归和动态规划的求解思路,但是我们发现这两种方案的时间复杂度都为 o(n)o(n)o(n),我们试图找一种更加优秀的时间复杂度的解法这里我们就要介绍快速幂的概念了我们先将n表现为2进制,例如3133^{13}313 = 311013^{1101}31101 = 383^838 * 343^434 * 333因为n有 ⌊log2n⌋\lfloor log
2024-04-13 18:33:00
1405
原创 leetcode热题100.爬楼梯(从递归到动态规划)
假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?示例 1:示例 2:假设 n=8,我们可以分情况讨论:综上所述,设f(n)为到达第层的方法数,则f(8)=f(7)+f(6)f(8) = f(7) + f(6)f(8)=f(7)+f(6)我们推广一下得到这样的公式:f(n)=f(n−1)+f(n−2)f(n) = f(n-1) + f(n-2)f(n)=f(n−1)+f(n−2)递归的出口为 f(1) = 1,f(0) = 0我们先用
2024-04-13 17:52:01
1177
原创 leetcode热题100.划分字母区间
给你一个字符串 s 。我们要把这个字符串划分为尽可能多的片段,同一字母最多出现在一个片段中。注意,划分结果需要满足:将所有划分结果按顺序连接,得到的字符串仍然是 s 。返回一个表示每个字符串片段的长度的列表。示例 1:示例 2:由于同一个字母只能出现在同一个片段,显然一个字母出现的最后一个位置也在这个片段中;题目中要求我们尽可能多的划分片段,所以每当我们确定了这个位置可以包含此位置之前的所有字母,那么我们一定要进行划分,这样划分数量才能最大例如下图,在a后面切一刀才能保证最大分割具体做法:我们先计算每个
2024-04-09 15:15:00
647
完整运行版java小程序商城源码.zip
2024-05-12
零食商城.zip
2024-05-12
积分商城.zip
2024-05-12
微电商模板.zip
2024-05-12
小商城.zip
2024-05-12
灵动云商城+php后台+后台配置教程.zip
2024-05-12
小京东.zip
2024-05-12
家装四件套商城.zip
2024-05-12
美容类 预约报名列表.zip
2024-05-12
美容类预约报名列表.zip
2024-05-12
学习用商品详情购物车.zip
2024-05-12
建材类.zip
2024-05-12
九毛百货商城.zip
2024-05-12
小商城精简版.zip
2024-05-12
朴实商城.zip
2024-05-12
小商城UI设计完善.zip
2024-05-12
简单小商城模板.zip
2024-05-12
简易商城.zip
2024-05-12
小迪外卖+后台.zip
2024-05-12
酒水商城.zip
2024-05-12
商城2.zip
2024-05-12
微信小程序商城+java后台.zip
2024-05-12
外卖商城.zip
2024-05-12
数套打包商城无后台源码.zip
2024-05-12
食品类商城.zip
2024-05-12
前台.zip
2024-05-12
静态商城.zip
2024-05-12
爱靓女带后台.zip
2024-05-12
家居商城.zip
2024-05-12
微电商商城.zip
2024-05-12
小程序商城.zip
2024-05-12
女性用品商城.zip
2024-05-12
基础商城.zip
2024-05-12
通用商城简版.zip
2024-05-12
shop商城.zip
2024-05-12
喵喵小说.zip
2024-05-12
新爱靓女+后台+安装方法.zip
2024-05-12
礼物商城.zip
2024-05-12
我的商城.zip
2024-05-12
ccf运行python代码时报错,未初始化警告
2022-06-11
小蓝的01字符串,搞不懂第13行的判断条件中g为什么要+1
2022-05-19
在python中用for创建二维列表和用乘法创建有什么区别?
2022-03-21
c++程序运行错误,进入dfs函数后直接退出,后面没有输出
2021-11-25
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅