自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(358)
  • 资源 (1)
  • 收藏
  • 关注

原创 ComfyUI Go客户端

ComfyUIClient 是一个与 ComfyUI API 交互的 Go 客户端库,旨在通过代码的调用,让用户更轻松地与ComfyUI交互,从而实现任务的自动化。

2024-02-05 00:08:01 238

原创 Go打印结构体指针中的具体内容,而无需实现String()方法

我们从上述的例子可以看到,我们无法打印出结构体内部的Left和Right,只能打印出他们的地址。

2023-11-09 22:45:12 182

原创 基于redis实现的分布式锁项目-Go语言

【代码】基于redis实现的分布式锁项目-Go语言。

2023-07-21 19:53:44 157

原创 博客迁移通知

博客迁移

2022-11-26 21:09:37 293 1

原创 Solidity学习指南

Solidity

2022-09-11 01:09:49 275

原创 Solidity:类型-值类型

类型Solidity是一种静态类型语言,所以每个变量都需要在编译时指定变量的类型。“undefined”或“null”值的概念在Solidity中是不存在的值类型变量始终按值来传递。当这些变量被用作函数参数或者用在赋值语句中时,总会进行值拷贝。布尔类型bool:取值为字面常数值true和false运算符:! (逻辑非)&& (逻辑与)|| (逻辑或)==(等于)!=(不等于)运算符||和&&都遵循短路规则整型int:表示有符号的不同位数的整型

2022-04-25 17:10:56 1122

原创 Solidity:合约结构

合约结构合约类似于面向编程语言中的类。 每个合约中可以包含状态变量、函数、函数修饰器、事件、结构类型和枚举类型的声明。还有一些特殊的合约如:库和接口状态变量状态变量是永久存储在合约存储中的值函数函数是合约中代码的可执行单元。函数通常在合约内部定义,但也可在合约外部定义函数修饰器函数修饰器可以用来以声明的方式改良函数语义事件事件是能方便调用以太坊虚拟机(EVM)日志功能的接口结构体结构体是可以将几个变量分组的自定义类型枚举类型枚举类型可用来创建由一定数量的“常量值”构成的自定义类型

2022-04-21 21:58:07 5726

原创 Solidity:源文件结构

Solidity源文件结构SPDX License Identifier如果源代码可用,则可以更好地建立对智能合约的信任。由于提供源代码总是涉及版权方面的法律问题,Solidity编译器鼓励使用机器可读的SPDX License Identifier。每个源文件都应以一条注释开头,说明其许可证:// SPDX-License-Identifier: MIT编译器不会验证该许可证是否属于SPDX允许的列表的一部分,但它会在:ref:bytecode metadata<metadata>。

2022-04-21 21:55:15 734

原创 力扣:统计一致字符串的数目

1684. 统计一致字符串的数目给你一个由不同字符组成的字符串 allowed 和一个字符串数组 words 。如果一个字符串的每一个字符都在 allowed 中,就称这个字符串是 一致字符串 。请你返回 words 数组中 一致字符串 的数目。示例 1:输入:allowed = "ab", words = ["ad","bd","aaab","baa","badab"]输出:2解释:字符串 "aaab" 和 "baa" 都是一致字符串,因为它们只包含字符 'a' 和 'b' 。示例 2:

2022-04-18 21:51:52 190

原创 力扣:层数最深叶子节点的和

1302. 层数最深叶子节点的和给你一棵二叉树的根节点 root ,请你返回 层数最深的叶子节点的和 。示例 1:输入:root = [1,2,3,4,5,null,6,7,null,null,null,null,8]输出:15示例 2:输入:root = [6,7,8,2,7,1,3,9,null,1,4,null,null,null,5]输出:19提示:树中节点数目在范围 [1, 104] 之间。1 <= Node.val <= 100/** * Defin

2022-04-18 21:43:21 333

原创 力扣:交换数字

面试题 16.01. 交换数字编写一个函数,不用临时变量,直接交换numbers = [a, b]中a与b的值。示例:输入: numbers = [1,2]输出: [2,1]提示:numbers.length == 2-2147483647 <= numbers[i] <= 2147483647抖机灵 这显然是不对的class Solution { public int[] swapNumbers(int[] numbers) { return n

2022-04-17 20:33:35 279

原创 力扣:二叉树的镜像

剑指 Offer 27. 二叉树的镜像请完成一个函数,输入一个二叉树,该函数输出它的镜像。例如输入:镜像输出:示例 1:输入:root = [4,2,7,1,3,6,9]输出:[4,7,2,9,6,3,1]限制:0 <= 节点个数 <= 1000/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; *

2022-04-17 20:23:40 349

原创 力扣:括号生成

22. 括号生成数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。示例 1:输入:n = 3输出:["((()))","(()())","(())()","()(())","()()()"]示例 2:输入:n = 1输出:["()"]提示:1 <= n <= 8class Solution { List<String> list = new ArrayList<>(); public

2022-04-17 20:13:13 331

原创 力扣:生成匹配的括号

剑指 Offer II 085. 生成匹配的括号正整数 n 代表生成括号的对数,请设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。示例 1:输入:n = 3输出:["((()))","(()())","(())()","()(())","()()()"]示例 2:输入:n = 1输出:["()"]提示:1 <= n <= 8class Solution { List<String> list = new ArrayList<&gt

2022-04-17 20:12:04 174

原创 力扣:没有重复元素集合的全排列

剑指 Offer II 083. 没有重复元素集合的全排列给定一个不含重复数字的整数数组 nums ,返回其 所有可能的全排列 。可以 按任意顺序 返回答案。示例 1:输入:nums = [1,2,3]输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]示例 2:输入:nums = [0,1]输出:[[0,1],[1,0]]示例 3:输入:nums = [1]输出:[[1]]提示:1 <= nums.length &l

2022-04-17 19:51:15 420

原创 力扣:展平二叉搜索树

剑指 Offer II 052. 展平二叉搜索树给你一棵二叉搜索树,请 按中序遍历 将其重新排列为一棵递增顺序搜索树,使树中最左边的节点成为树的根节点,并且每个节点没有左子节点,只有一个右子节点。示例 1:输入:root = [5,3,6,2,4,null,8,1,null,null,null,7,9]输出:[1,null,2,null,3,null,4,null,5,null,6,null,7,null,8,null,9]示例 2:输入:root = [5,1,7]输出:[1,null

2022-04-17 19:40:09 112

转载 力扣:判断句子是否为全字母句

1832. 判断句子是否为全字母句全字母句 指包含英语字母表中每个字母至少一次的句子。给你一个仅由小写英文字母组成的字符串 sentence ,请你判断 sentence 是否为 全字母句 。如果是,返回 true ;否则,返回 false 。示例 1:输入:sentence = "thequickbrownfoxjumpsoverthelazydog"输出:true解释:sentence 包含英语字母表中每个字母至少一次。示例 2:输入:sentence = "leetcode"输出

2022-04-17 19:27:58 151

原创 力扣:二进制中1的个数

剑指 Offer 15. 二进制中1的个数编写一个函数,输入是一个无符号整数(以二进制串的形式),返回其二进制表达式中数字位数为 ‘1’ 的个数(也被称为 汉明重量).)。提示:请注意,在某些语言(如 Java)中,没有无符号整数类型。在这种情况下,输入和输出都将被指定为有符号整数类型,并且不应影响您的实现,因为无论整数是有符号的还是无符号的,其内部的二进制表示形式都是相同的。在 Java 中,编译器使用 二进制补码 记法来表示有符号整数。因此,在上面的 示例 3 中,输入表示有符号整数 -3。

2022-04-17 19:21:23 96

原创 力扣:位1的个数

191. 位1的个数编写一个函数,输入是一个无符号整数(以二进制串的形式),返回其二进制表达式中数字位数为 ‘1’ 的个数(也被称为汉明重量)。提示:请注意,在某些语言(如 Java)中,没有无符号整数类型。在这种情况下,输入和输出都将被指定为有符号整数类型,并且不应影响您的实现,因为无论整数是有符号的还是无符号的,其内部的二进制表示形式都是相同的。在 Java 中,编译器使用二进制补码记法来表示有符号整数。因此,在上面的 示例 3 中,输入表示有符号整数 -3。示例 1:输入:000000

2022-04-17 19:19:05 81

原创 力扣:链表的中间结点

876. 链表的中间结点给定一个头结点为 head 的非空单链表,返回链表的中间结点。如果有两个中间结点,则返回第二个中间结点。示例 1:输入:[1,2,3,4,5]输出:此列表中的结点 3 (序列化形式:[3,4,5])返回的结点值为 3 。 (测评系统对该结点序列化表述是 [3,4,5])。注意,我们返回了一个 ListNode 类型的对象 ans,这样:ans.val = 3, ans.next.val = 4, ans.next.next.val = 5, 以及 ans.next.n

2022-04-16 18:24:20 118

原创 力扣:删除链表中的节点

237. 删除链表中的节点请编写一个函数,用于 删除单链表中某个特定节点 。在设计函数时需要注意,你无法访问链表的头节点 head ,只能直接访问 要被删除的节点 。题目数据保证需要删除的节点 不是末尾节点 。示例 1:输入:head = [4,5,1,9], node = 5输出:[4,1,9]解释:指定链表中值为 5 的第二个节点,那么在调用了你的函数之后,该链表应变为 4 -> 1 -> 9示例 2:输入:head = [4,5,1,9], node = 1输出:[

2022-04-12 19:09:03 655

原创 力扣:一维数组的动态和

1480. 一维数组的动态和给你一个数组 nums 。数组「动态和」的计算公式为:runningSum[i] = sum(nums[0]…nums[i]) 。请返回 nums 的动态和。示例 1:输入:nums = [1,2,3,4]输出:[1,3,6,10]解释:动态和计算过程为 [1, 1+2, 1+2+3, 1+2+3+4] 。示例 2:输入:nums = [1,1,1,1,1]输出:[1,2,3,4,5]解释:动态和计算过程为 [1, 1+1, 1+1+1, 1+1+1+1,

2022-04-12 19:01:02 315

原创 力扣:判断根结点是否等于子结点之和

2236. 判断根结点是否等于子结点之和给你一个 二叉树 的根结点 root,该二叉树由恰好 3 个结点组成:根结点、左子结点和右子结点。如果根结点值等于两个子结点值之和,返回 true ,否则返回 false 。示例 1:输入:root = [10,4,6]输出:true解释:根结点、左子结点和右子结点的值分别是 10 、4 和 6 。由于 10 等于 4 + 6 ,因此返回 true 。示例 2:输入:root = [5,3,1]输出:false解释:根结点、左子结点和右子结

2022-04-12 18:54:54 674

原创 力扣:两整数相加

2235. 两整数相加给你两个整数 num1 和 num2,返回这两个整数的和。示例 1:输入:num1 = 12, num2 = 5输出:17解释:num1 是 12,num2 是 5 ,它们的和是 12 + 5 = 17 ,因此返回 17 。示例 2:输入:num1 = -10, num2 = 4输出:-6解释:num1 + num2 = -6 ,因此返回 -6 。提示:-100 <= num1, num2 <= 100class Solution {

2022-04-12 18:52:30 335

原创 力扣:执行操作后的变量值

2011. 执行操作后的变量值存在一种仅支持 4 种操作和 1 个变量 X 的编程语言:++X 和 X++ 使变量 X 的值 加 1--X 和 X-- 使变量 X 的值 减 1最初,X 的值是 0给你一个字符串数组 operations ,这是由操作组成的一个列表,返回执行所有操作后, X 的 最终值 。示例 1:输入:operations = ["--X","X++","X++"]输出:1解释:操作按下述步骤执行:最初,X = 0--X:X 减 1 ,X = 0 - 1 = -

2022-04-11 10:26:49 85

原创 力扣:唯一摩尔斯密码词

804. 唯一摩尔斯密码词国际摩尔斯密码定义一种标准编码方式,将每个字母对应于一个由一系列点和短线组成的字符串, 比如:'a' 对应 ".-" ,'b' 对应 "-..." ,'c' 对应 "-.-." ,以此类推。为了方便,所有 26 个英文字母的摩尔斯密码表如下:[".-","-...","-.-.","-..",".","..-.","--.","....","..",".---","-.-",".-..","--","-.","---",".--.","--.-",".-.","..

2022-04-10 21:29:58 76

原创 力扣:调整数组顺序使奇数位于偶数前面

剑指 Offer 21. 调整数组顺序使奇数位于偶数前面输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数在数组的前半部分,所有偶数在数组的后半部分。示例:输入:nums = [1,2,3,4]输出:[1,3,2,4] 注:[3,1,2,4] 也是正确的答案之一。提示:0 <= nums.length <= 500000 <= nums[i] <= 10000class Solution { public int[] exchange

2022-04-09 22:05:21 110

原创 力扣:二叉树的深度

剑指 Offer 55 - I. 二叉树的深度输入一棵二叉树的根节点,求该树的深度。从根节点到叶节点依次经过的节点(含根、叶节点)形成树的一条路径,最长路径的长度为树的深度。例如:给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回它的最大深度 3 。提示:节点总数 <= 10000注意:本题与主站 104 题相同:https://leetcode-cn.com/problems/maxim

2022-04-09 21:29:01 490

原创 力扣:替换空格

剑指 Offer 05. 替换空格请实现一个函数,把字符串 s 中的每个空格替换成"%20"。示例 1:输入:s = "We are happy."输出:"We%20are%20happy."限制:0 <= s 的长度 <= 10000class Solution { public String replaceSpace(String s) { StringBuilder s1 = new StringBuilder(); for(int

2022-04-09 21:10:38 179

原创 力扣:两个链表的第一个公共节点

剑指 Offer 52. 两个链表的第一个公共节点输入两个链表,找出它们的第一个公共节点。如下面的两个链表 :在节点 c1 开始相交。示例 1:输入:intersectVal = 8, listA = [4,1,8,4,5], listB = [5,0,1,8,4,5], skipA = 2, skipB = 3输出:Reference of the node with value = 8输入解释:相交节点的值为 8 (注意,如果两个列表相交则不能为 0)。从各自的表头开始算起,链表 A

2022-04-09 16:56:58 102

原创 力扣:二维数组中的查找

剑指 Offer 04. 二维数组中的查找在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个高效的函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。示例:现有矩阵 matrix 如下:[ [1, 4, 7, 11, 15], [2, 5, 8, 12, 19], [3, 6, 9, 16, 22], [10, 13, 14, 17, 24], [18, 21, 23, 26, 30

2022-04-09 16:02:28 409

原创 力扣:链表中倒数第k个节点

剑指 Offer 22. 链表中倒数第k个节点输入一个链表,输出该链表中倒数第k个节点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点。例如,一个链表有 6 个节点,从头节点开始,它们的值依次是 1、2、3、4、5、6。这个链表的倒数第 3 个节点是值为 4 的节点。示例:给定一个链表: 1->2->3->4->5, 和 k = 2.返回链表 4->5./** * Definition for singly-linked list.

2022-04-07 07:35:44 666

原创 力扣:二叉树的层序遍历

102. 二叉树的层序遍历给你二叉树的根节点 root ,返回其节点值的 层序遍历 。 (即逐层地,从左到右访问所有节点)。示例 1:输入:root = [3,9,20,null,null,15,7]输出:[[3],[9,20],[15,7]]示例 2:输入:root = [1]输出:[[1]]示例 3:输入:root = []输出:[]提示:树中节点数目在范围 [0, 2000] 内-1000 <= Node.val <= 1000/** * Defi

2022-04-06 22:13:24 105

原创 力扣:链表中环的入口节点

剑指 Offer II 022. 链表中环的入口节点给定一个链表,返回链表开始入环的第一个节点。 从链表的头节点开始沿着 next 指针进入环的第一个节点为环的入口节点。如果链表无环,则返回 null。为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。注意,pos 仅仅是用于标识环的情况,并不会作为参数传递到函数中。**说明:**不允许修改给定的链表。示例 1:输入:head = [3,2,0,-4],

2022-04-06 21:54:06 356

原创 力扣:连续子数组的最大和

剑指 Offer 42. 连续子数组的最大和输入一个整型数组,数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。要求时间复杂度为O(n)。示例1:输入: nums = [-2,1,-3,4,-1,2,1,-5,4]输出: 6解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。提示:1 <= arr.length <= 105-100 <= arr[i] <= 100class Solution { public int ma

2022-04-06 19:36:14 435

原创 力扣:存在重复元素

217. 存在重复元素给你一个整数数组 nums 。如果任一值在数组中出现 至少两次 ,返回 true ;如果数组中每个元素互不相同,返回 false 。示例 1:输入:nums = [1,2,3,1]输出:true示例 2:输入:nums = [1,2,3,4]输出:false示例 3:输入:nums = [1,1,1,3,3,4,3,2,4,2]输出:true提示:1 <= nums.length <= 105-109 <= nums[i] <=

2022-03-22 17:59:17 283

原创 力扣:有效的括号

20. 有效的括号给定一个只包括 '(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。示例 1:输入:s = "()"输出:true示例 2:输入:s = "()[]{}"输出:true示例 3:输入:s = "(]"输出:false示例 4:输入:s = "([)]"输出:false示例 5:输入:s = "{[]}"输出:true提示:

2022-03-21 08:47:27 70

原创 力扣:删除链表的节点

剑指 Offer 18. 删除链表的节点给定单向链表的头指针和一个要删除的节点的值,定义一个函数删除该节点。返回删除后的链表的头节点。注意: 此题对比原题有改动示例 1:输入: head = [4,5,1,9], val = 5输出: [4,1,9]解释: 给定你链表中值为 5 的第二个节点,那么在调用了你的函数之后,该链表应变为 4 -> 1 -> 9.示例 2:输入: head = [4,5,1,9], val = 1输出: [4,5,9]解释: 给定你链表中值为 1

2022-03-21 05:54:25 1237

原创 力扣:翻转二叉树

226. 翻转二叉树给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。示例 1:输入:root = [4,2,7,1,3,6,9]输出:[4,7,2,9,6,3,1]示例 2:输入:root = [2,1,3]输出:[2,3,1]示例 3:输入:root = []输出:[]提示:树中节点数目范围在 [0, 100] 内-100 <= Node.val <= 100/** * Definition for a binary tree n

2022-03-21 05:41:34 149

原创 力扣:移除重复节点

面试题 02.01. 移除重复节点编写代码,移除未排序链表中的重复节点。保留最开始出现的节点。示例1: 输入:[1, 2, 3, 3, 2, 1] 输出:[1, 2, 3]示例2: 输入:[1, 1, 1, 1, 2] 输出:[1, 2]提示:链表长度在[0, 20000]范围内。链表元素在[0, 20000]范围内。进阶:如果不得使用临时缓冲区,该怎么解决?/** * Definition for singly-linked list. * public class

2022-03-21 05:34:07 255

PCSpim教学模拟器

计算机组成原理(PCspim是一款MIPS汇编语言的编译器。它体积小、运行速度快、占用内存少。)

2020-12-22

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除