自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(364)
  • 收藏
  • 关注

原创 自定义分库分表组件(实现分库分表的组件)——java

可以先看下上文的基础知识——为什么分库分表本文是借鉴小傅哥的笔记 整理的自己学习笔记 仅作学习使用 如有侵权请联系本文是对分库分表组件的具体实现:我们要实现的也是水平拆分的路由设计,如图i < 16;i++) {System.out. println("斐波那契散列:" + idx + " 普通散列:" +(String. valueOf(i) . hashCode() & 15));} } 斐波那契散列:7 普通散列:0斐波那契散列:14 普通散列:1。

2023-02-16 15:47:46 1330

原创 leetcode热题HOT100汇总——java题解已完结撒花

为了学习本文捋顺leetcode热题HOT100的汇总 方便自己秋招刷题 仅作刷题笔记使用 感兴趣的小伙伴点一个赞吧。

2022-12-15 13:56:01 6455

原创 curl: (7) Failed to connect to raw.githubusercontent.com port 443 after 4 ms: Couldn‘‘t connect to

安装Homebrew出现错误

2024-07-07 11:19:21 1185

原创 leetcode周赛 2859. 计算 K 置位下标对应元素的和

二进制中1的个数相关的给你一个下标从 0 开始的整数数组 nums 和一个整数 k。请你用整数形式返回 nums 中的特定元素之 和 ,这些特定元素满足:其对应下标的二进制表示中恰存在 k 个置位。整数的二进制表示中的 1 就是这个整数的 置位。例如,21 的二进制表示为 10101 ,其中有 3 个置位。代码案例:输入:nums = [5,10,1,5,2], k = 1输出:13解释:下标的二进制表示是:0 = 00021 = 00122 = 0102。

2023-09-21 17:49:35 494

原创 leetcode 周赛——2848. 与车相交的点

差分数组知识点给你一个下标从 0 开始的二维整数数组 nums 表示汽车停放在数轴上的坐标。对于任意下标 i,nums[i] = [starti, endi] ,其中 starti 是第 i 辆车的起点,endi 是第 i 辆车的终点。返回数轴上被车 任意部分 覆盖的整数点的数目。代码案例:输入:nums = [[3,6],[1,5],[4,7]]输出:7解释:从 1 到 7 的所有点都至少与一辆车相交,因此答案为 7。

2023-09-17 00:13:06 830

原创 分布式配置中心 Apollo

2、客户端还会定时从Apollo配置中心服务端拉取应用的最新配置,而且客户端定时拉取会上报给本地版本,默认每隔5分钟拉取一次,也可以通过运行时指定apollo.refreshInterval来覆盖,单位为分钟。4、客户端会把从服务端拉取到的配置在本地文件系统缓存一份,保证在遇到服务不可用或网路故障时,依赖能从本地恢复配置,也实现了一定的高可用性。2)另外,Eureka还支持在我们应用自身的容器中启动,也就是说我们的应用启动完之后,既充当了Eureka的角色,同时也是服务的提供者。

2023-09-02 15:10:00 645

原创 Cannal监听binlog

这个cannal与美团中的DTS比较类似,业务需求中可能监听表的插入、更新、删除的操作,然后发送mafka消息。

2023-09-01 20:47:06 3211

原创 分布式任务调度框架xxl-Job

学习为主。

2023-08-31 21:20:09 381

原创 Java并发编程的简单理解

高并发系统的演进应该是循序渐进,以解决系统中存在的问题为目的和驱动力的。所以并不是所有的并发系统设计都要追求高流量,电商对其淘宝那种,IM对齐微信相关知识储备而我们需要注意的是,在应对高并发大流量的时候,系统是可以通过增加机器来承担流量冲击的,至于要采用什么样的方案还是要具体问题具体分析。异步线程处理、检验更新时间等参考资料:https://juejin.cn/post/6844903752579678222?和极客时间。

2023-08-30 19:36:55 247

原创 mac笔记本安装java环境以及idea设置

从windows换成笔记本的不适应,所以一些设置参数都要重新设置,本文只针对macbook笔记本且m1芯片的电脑,不过应该这个版本以上的都适用。2、创建上一步的data文件夹和/data文件夹的软连接:sudo ln -s /Users/你的用户名/data /data。这里面踩到的一些坑:git拉取的时候,明明生成ssh-key但是无法连接远程仓库,最后是版本问题,需要生成新的加密算法即可。加入这个,当然这里面说的是下载到了usr/local这个是隐藏文件夹,一般就默认下载地方就好了,不要隐藏文件夹。

2023-07-10 23:13:14 18765 2

原创 leetcode 165. 比较版本号-java实现

模拟就可以了给你两个版本号 version1 和 version2 ,请你比较它们。版本号由一个或多个修订号组成,各修订号由一个 ‘.’ 连接。每个修订号由 多位数字 组成,可能包含 前导零。每个版本号至少包含一个字符。修订号从左到右编号,下标从 0 开始,最左边的修订号下标为 0 ,下一个修订号下标为 1 ,以此类推。例如,2.5.33 和 0.1 都是有效的版本号。比较版本号时,请按从左到右的顺序依次比较它们的修订号。比较修订号时,只需比较 忽略任何前导零后的整数值。

2023-06-06 23:04:27 1090

原创 华为OD机试(JAVA)真题 2023(汽水瓶\随机数\进制转换)

某商店规定:三个空汽水瓶可以换一瓶汽水,允许向老板借空汽水瓶(但是必须要归还)。小张手上有n个空汽水瓶,她想知道自己最多可以喝到多少瓶汽水。数据范围:输入的正整数满足1≤≤1001≤n≤100注意:本题存在多组输入。输入的 0 表示输入结束,并不用输出结果。输入描述:输入文件最多包含 10 组测试数据,每个数据占一行,仅包含一个正整数 n( 1

2023-04-26 00:26:12 1957 1

原创 秋招备考-华为近6个月高频题汇总

仅记录本人准备Leetcode的心得 大家参考 大部分都是做过的题目总共22道题。

2023-04-23 22:53:44 888

原创 leetcode 705. 设计哈希集合-java实现

华为校招不使用任何内建的哈希表库设计一个哈希集合(HashSet)。实现 MyHashSet 类:void add(key) 向哈希集合中插入值 key。bool contains(key) 返回哈希集合中是否存在这个值 key。void remove(key) 将给定值 key 从哈希集合中删除。如果哈希集合中没有这个值,什么也不做。代码案例:输入:输出:解释:// 返回 True// 返回 False ,(未找到)// 返回 True。

2023-04-23 21:33:41 506

原创 leetcode 周赛 2386. 找出数组的第 K 大和-java实现

华为校招给你一个整数数组 nums 和一个 正 整数 k。你可以选择数组的任一 子序列 并且对其全部元素求和。数组的 第 k 大和 定义为:可以获得的第 k 个 最大 子序列和(子序列和允许出现重复)返回数组的 第 k 大和。子序列是一个可以由其他数组删除某些或不删除元素排生而来的数组,且派生过程不改变剩余元素的顺序。注意:空子序列的和视作 0。代码案例:输入:nums = [2,4,-2], k = 5输出:2。

2023-04-23 15:18:37 538

原创 leetcode 1669. 合并两个链表-java实现

华为校招给你两个链表 list1 和 list2 ,它们包含的元素分别为 n 个和 m 个。请你将 list1 中下标从 a 到 b 的全部节点都删除,并将list2 接在被删除节点的位置。下图中蓝色边和节点展示了操作后的结果:代码案例:输入:list1 = [0,1,2,3,4,5], a = 3, b = 4, list2 = [1000000,1000001,1000002]输出:[0,1,2,1000000,1000001,1000002,5]

2023-04-23 12:03:24 130

原创 leetcode 205. 同构字符串-java实现

华为校招给定两个字符串 s 和 t ,判断它们是否是同构的。如果 s 中的字符可以按某种映射关系替换得到 t ,那么这两个字符串是同构的。每个出现的字符都应当映射到另一个字符,同时不改变字符的顺序。不同字符不能映射到同一个字符上,相同字符只能映射到同一个字符上,字符可以映射到自己本身。代码案例:输入:s = “egg”, t = “add”输出:true输入:s = “foo”, t = “bar”输出:false。

2023-04-22 23:56:21 287

原创 PDMS二次开发(一)——PML类型程序类型与概念

PDMS二次开发需要.net 有自带的PML语言和C#.net一般通常泛指的是C#语言模型数据借助.NET的接口可以转换成数据库中的关系型数据,将固化在PDMS软件中的工程数据,转移到更广阔的应用领域。.NET二次开发的两种方式。一种是使用.NET插件;另一种是使用PML.NET。两种方式的机制都可以使用程序被动态加载到使用的模块中。我采用的是纯.NET开发的方式,熟悉PML的人可能更喜欢PML.NET的方式。编辑器的话 PML 可以用。

2023-02-23 14:31:12 3761

原创 Video Speed Controller谷歌视频加速插件——16倍速

主要是网课刷的时候 太慢所以找到了刷视频的方法 由于前几个的权限受限制 所以还是选用了谷歌浏览器的 Video Speed Controller。

2023-02-14 16:18:03 32344

原创 为什么分库分表

开发一个基于 HashMap 核心设计原理,使用哈希散列+扰动函数的方式,把数据散列到多个库表中的组件,并验证使用。分库:就是一个数据库分成多个数据库,部署到不同机器。分表:就是一个数据库表分成多个表。预定义算法是事先已经明确知道分库和分表的数量,可以直接将某类数据路由到指定库或表中,查询的时候亦是如此。

2023-02-11 17:02:47 1209

原创 go: GOPATH entry is relative; must be absolute path: “F:oocode“.

在安装hertz 之类的 总会弹出go 的不合法 等出现这样的错误 要不就是go的不合法 会爆红 说go无这种命令go:术语“ go”未被识别为cmdlet,函数,脚本文件或可运行程序的名称就是这样的**错误**这样就可以使用了 就是gopath和goroot路径没有配置好。

2023-01-30 15:56:54 1104

原创 mysql:如何在windows环境下配置并随意切换两种mysql版本

之前安装过5.7的版本 后来由于需要 就安装了8.0的版本。

2023-01-28 18:54:31 2145

原创 leetcode 130. 被围绕的区域-java题解

洪水灌溉算法 先找到处于边界不会被填充的O给你一个 m x n 的矩阵 board ,由若干字符 ‘X’ 和 ‘O’ ,找到所有被 ‘X’ 围绕的区域,并将这些区域里所有的 ‘O’ 用 ‘X’ 填充。代码案例:输入:board = [[“X”,“X”,“X”,“X”],[“X”,“O”,“O”,“X”],[“X”,“X”,“O”,“X”],[“X”,“O”,“X”,“X”]]

2023-01-28 15:14:00 252

原创 leetcode 621. 任务调度器-java题解

贪心的做法 数组模拟哈希表给你一个用字符数组 tasks 表示的 CPU 需要执行的任务列表。其中每个字母表示一种不同种类的任务。任务可以以任意顺序执行,并且每个任务都可以在 1 个单位时间内执行完。在任何一个单位时间,CPU 可以完成一个任务,或者处于待命状态。然而,两个 相同种类 的任务之间必须有长度为整数 n 的冷却时间,因此至少有连续 n 个单位时间内 CPU 在执行不同的任务,或者在待命状态。你需要计算完成所有任务所需要的 最短时间。

2023-01-27 22:33:33 239

原创 leetcode 581. 最短无序连续子数组-java题解

分类的话 算 双指针算法吧给你一个整数数组 nums ,你需要找出一个 连续子数组 ,如果对这个子数组进行升序排序,那么整个数组都会变为升序排序。请你找出符合题意的 最短 子数组,并输出它的长度。代码案例:输入:nums = [2,6,4,8,10,9,15]输出:5解释:你只需要对 [6, 4, 8, 10, 9] 进行升序排序,那么整个表都会变为升序排序。

2023-01-27 16:55:22 162

原创 leetcode 560. 和为 K 的子数组-java题解

前缀和 哈希表给你一个整数数组 nums 和一个整数 k ,请你统计并返回 该数组中和为 k 的连续子数组的个数。代码案例:输入:nums = [1,1,1], k = 2输出:2。

2023-01-27 16:00:28 259

原创 leetcode 543. 二叉树的直径-java题解

二叉树给定一棵二叉树,你需要计算它的直径长度。一棵二叉树的直径长度是任意两个结点路径长度中的最大值。这条路径可能穿过也可能不穿过根结点。代码案例: 12 3/ \4 5返回 3, 它的长度是路径 [4,2,1,3] 或者 [5,2,1,3]。

2023-01-27 15:45:29 231

原创 leetcode 461. 汉明距离-java题解

位运算两个整数之间的 汉明距离 指的是这两个数字对应二进制位不同的位置的数目。给你两个整数 x 和 y,计算并返回它们之间的汉明距离。代码案例:输入:x = 1, y = 4输出:2解释:↑ ↑上面的箭头指出了对应二进制位不同的位置。

2023-01-21 12:05:46 175

原创 leetcode 448. 找到所有数组中消失的数字-java题解

给你一个含 n 个整数的数组 nums ,其中 nums[i] 在区间 [1, n] 内。请你找出所有在 [1, n] 范围内但没有出现在 nums 中的数字,并以数组的形式返回结果。代码案例:输入:nums = [4,3,2,7,8,2,3,1]输出:[5,6]

2023-01-21 11:58:58 174

原创 go:术语“ go”未被识别为cmdlet,函数,脚本文件或可运行程序的名称

用vscode安装的时候 编译总出问题 因为第一次安装的go环境的部件没有installgo:术语“ go”未被识别为cmdlet,函数,脚本文件或可运行程序的名称。

2023-01-18 19:58:58 1776 2

原创 当青训营遇上码上掘金之主题四-攒青豆

现有 n 个宽度为 1 的柱子,给出 n 个非负整数依次表示柱子的高度,排列后如下图所示,此时均匀从上空向下撒青豆,计算按此排列的柱子能接住多少青豆。(不考虑边角堆积)以下为上图例子的解析: 输入:height = [5,0,2,1,4,0,1,0,3] 输出:17解析:上面是由数组 [5,0,2,1,4,0,1,0,3] 表示的柱子高度,在这种情况下,可以接 17 个单位的青豆。

2023-01-16 10:27:21 513

原创 leetcode 437. 路径总和 III-java题解

路径系列的第三题 路径系列的题解如下但是该题中对合法路径的要求是路径不需要从根节点开始,也不需要在叶子节点结束。所以我们可以枚举每个结点作为起点,同时在判断路径总和是否等于目标值时并不需要要求该点为叶子节点。给定一个二叉树的根节点 root ,和一个整数 targetSum ,求该二叉树里节点值之和等于 targetSum 的 路径 的数目。路径 不需要从根节点开始,也不需要在叶子节点结束,但是路径方向必须是向下的(只能从父节点到子节点)。

2023-01-12 15:36:02 400

原创 leetcode 406. 根据身高重建队列-java题解

lamba表达式的自定义排序o1,o2中o1 - o2这样的默认是升序 也就是从小到大排序同时还要注意list.add(index,element)这种方法例子假设有打乱顺序的一群人站成一个队列,数组 people 表示队列中一些人的属性(不一定按顺序)。每个 people[i] = [hi, ki] 表示第 i 个人的身高为 hi ,前面 正好 有 ki 个身高大于或等于 hi 的人。请你重新构造并返回输入数组 people 所表示的队列。

2023-01-12 14:34:31 447

原创 leetcode 399. 除法求值-java题解

flod最短路算法给你一个变量对数组 equations 和一个实数值数组 values 作为已知条件,其中 equations[i] = [Ai, Bi] 和 values[i] 共同表示等式 Ai / Bi = values[i]。每个 Ai 或 Bi 是一个表示单个变量的字符串。另有一些以数组 queries 表示的问题,其中 queries[j] = [Cj, Dj] 表示第 j 个问题,请你根据已知条件找出 Cj / Dj =?的结果作为答案。返回 所有问题的答案。

2023-01-11 20:19:49 495

原创 leetcode 862. 和至少为 K 的最短子数组-java详细题解

重点:滑动窗口加优先队列这道题(面试常考)前缀和如果单调 就可以考虑双指针算法 但是这道题的前缀和并不单调,给你一个整数数组 nums 和一个整数 k ,找出 nums 中和至少为 k 的 最短非空子数组 ,并返回该子数组的长度。如果不存在这样的 子数组 ,返回 -1。子数组 是数组中 连续 的一部分。

2023-01-10 23:02:17 142

原创 面试题 08.04. 幂集-java题解

dfs 也可以用二进制的写法 不用递归1

2023-01-10 19:52:46 177

原创 leeetcode 394. 字符串解码-java题解

类似一个dfs的思想 分为数字和字母给定一个经过编码的字符串,返回它解码后的字符串。编码规则为: k[encoded_string],表示其中方括号内部的 encoded_string 正好重复 k 次。注意 k 保证为正整数。你可以认为输入字符串总是有效的;输入字符串中没有额外的空格,且输入的方括号总是符合格式要求的。此外,你可以认为原始数据不包含数字,所有的数字只表示重复的次数 k ,例如不会出现像 3a 或 2[4] 的输入。代码案例:输入:s = “3[a]2[bc]”

2023-01-10 12:51:32 161

原创 leetcode 347. 前 K 个高频元素-java题解

哈希 + 计数排序给你一个整数数组 nums 和一个整数 k ,请你返回其中出现频率前 k 高的元素。你可以按 任意顺序 返回答案。代码案例:输入: nums = [1,1,1,2,2,3], k = 2输出: [1,2]提示:k 的取值范围是 [1, 数组中不相同的元素的个数]题目数据保证答案唯一,换句话说,数组中前 k 个高频元素的集合是唯一的进阶:你所设计算法的时间复杂度 必须 优于 O(n log n) ,其中 n 是数组大小。

2023-01-10 12:15:43 245

原创 leetcode 338. 比特位计数-java题解

给你一个整数 n ,对于 0 12 --> 10。

2023-01-10 11:57:07 231 2

原创 leetcode 312. 戳气球-java题解

类似区间DP有 n 个气球,编号为0 到 n - 1,每个气球上都标有一个数字,这些数字存在数组 nums 中。现在要求你戳破所有的气球。戳破第 i 个气球,你可以获得 nums[i - 1] * nums[i] * nums[i + 1] 枚硬币。这里的 i - 1 和 i + 1 代表和 i 相邻的两个气球的序号。如果 i - 1或 i + 1 超出了数组的边界,那么就当它是一个数字为 1 的气球。求所能获得硬币的最大数量。代码案例:输入:nums = [3,1,5,8]输出:167。

2023-01-10 11:31:23 253

Video Speed Controller谷歌插件

Video Speed Controller是一款可以帮助用户对HTML5视频进行加速和减速播放的谷歌浏览器插件,在chrome中安装了Video Speed Controller插件以后,用户就可以在使用chrome自带的HTML5播放器播放视频的时候,对视频的播放速度进行控制。还可以设置为0.07倍-16倍,不像大多平台只能设置到2倍,并满足不了有时候的需求。 安装插件后左上角会显示浮窗,我们可以手动设置调整速度和其他功能。(仅支持HTML5播放器)

2023-02-14

空空如也

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

TA关注的人

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