自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

编程牧马人

搬砖一时爽 一直搬砖一直爽

  • 博客(88)
  • 资源 (2)
  • 收藏
  • 关注

原创 Channel扇出模式

go channel用法

2023-11-08 19:48:01 311

原创 [Go语言实战]并发模式runner

Go语言实战笔记

2023-05-10 10:26:33 709 1

原创 [DeepSpeed]初代chatGPT模型部署实践

DeepSpeed Chat 部署实践,初代GPT 模型

2023-05-09 16:58:12 1986

原创 DeepSpeed 部署中bug以及解决方法

DeepSpeed 部署问题及解决方案

2023-05-09 16:52:24 3547 1

原创 minikube start

minikube start

2023-03-03 19:39:35 181

原创 JUC之LockSupport

LockSupport

2023-01-26 13:19:23 93

原创 grpc-java

grpc-java

2022-12-04 18:17:20 218

原创 protoc & protoc-gen-go安装

protoc & protoc-gen-go安装

2022-12-04 17:55:25 1652

原创 Maven编译proto生成java代码失败Failed to execute goal org.xolstice.maven.plugins

Failed to execute goal org.xolstice.maven.plugins

2022-12-03 17:24:40 1984 1

原创 Leetcode 695. 岛屿的最大面积

695. 岛屿的最大面积

2022-09-28 17:10:07 75

原创 local variable ‘maxLen‘ referenced before assigment

python 引用全局变量

2022-09-27 14:38:19 279

原创 elasticsearch:The number of object passed must be even but was [1]

es

2022-09-17 15:14:40 573

原创 ProtoType 消息体创建

protoType

2022-07-12 17:02:44 113

原创 Netty-EventLoopGroup笔记

netty 笔记

2022-07-12 17:00:33 534

原创 基数排序详解

基数排序

2022-06-15 15:57:54 105

原创 桶排序算法

桶排序

2022-06-14 22:12:49 92

原创 插入排序(剑指offer)

插入排序

2022-06-12 12:34:36 98

原创 快速排序(剑指offer )

快速排序

2022-06-11 23:01:42 150

原创 四数之和双指针法

三数之和解法链接public List<List<Integer>> fourSum(int[] nums, int target) { List<List<Integer>> res = new ArrayList<>(); if (nums == null) { return res; } Arrays.sort(nums); int l

2022-05-29 16:18:31 78

原创 三数之和双指针法

版本一:public List<List<Integer>> threeSum(int[] nums) { List<List<Integer>> res = new ArrayList<>(); if (nums == null) { return res; } Arrays.sort(nums); int len = nums.lengt

2022-05-29 15:41:21 86

原创 Go中List 的使用方法

List 可以作为一个数组,stack、 queue 使用,使用方法有头插入,尾插入迭代List// To iterate over a list (where l is a *List):for e: l.Front(); e != nil ; e = e.Next() { // do something}结构体// 元素结构体type Element struct { // 指针 next, prev *Element // The list to whic.

2022-04-27 14:52:06 908

原创 144. 二叉树的前序遍历

最近在学习go 所以用go 来写算法,关于值传递与指针传递官方写法值传递func preorderTraversal(root *TreeNode) (list []int) { // 定义函数类型的变量 var traversal func(root *TreeNode) traversal = func(root *TreeNode) { if root == nil { return } lis.

2022-04-21 21:47:29 421

原创 N皇后2 位操作解法

进入下一行时,col 的值保持不变,pie左移一位,na右移一位,由于棋盘的最左列对应每个整数的最低二进制位,即每个整数的最右二进制位,因此对整数的移位操作方向和对棋盘的移位操作方向相反(对棋盘的移位操作方向是pei右移一位,na左移一位)class Solution: def totalNQueens(self, n: int) -> int: self.count = 0 self.n = n self.dfs(0, 0, 0, 0)

2022-04-21 10:35:01 123

原创 Docker安装Mysql 无法访问

问题如下:在服务器用docker 安装启动mysql 容器 之后一直无法进入mysqldocker run -itd --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql显示已经安装成功[root@179-180 ~]# docker psCONTAINER ID IMAGE COMMAND CREATED STATU

2022-04-15 16:57:27 2414 2

原创 72. 编辑距离

理解添加和删除添加word1 = “a”, word2 = “ad”, 保证 w1中a之前字符串与 w2 a之前的字符串一样 ,然后在w1 a之后插入’d’, dp[i][j] = dp[i][j - 1] + 1删除word1 = “ad”, word2 = “a”, 保证 w1中a之前字符串与 w2 a之前的字符串一样 ,然后在w1 a之后删除’d’, dp[i][j] = dp[i - 1][j] + 1替换word2添加一个元素,相当于word1删除一个元素,例如 word

2022-04-13 14:01:58 152

原创 6. Z 字形变换

将一个给定字符串 s 根据给定的行数 numRows ,以从上往下、从左到右进行 Z 字形排列。比如输入字符串为 “PAYPALISHIRING” 行数为 3 时,排列如下:P A H NA P L S I I GY I Rclass Solution { public String convert(String s, int numRows) { return m2(s, numRows); } // 我的思路,失败, 只通过部分用

2022-04-13 11:00:04 611 1

原创 leetcode 5.最长回文字串

示例 1:输入:s = “babad”输出:“bab”解释:“aba” 同样是符合题意的答案。示例 2:输入:s = “cbbd”输出:“bb”class Solution { public String longestPalindrome(String s) { return dpM(s); // return m2(s); // return m3(s); } // 法一: 动态规划 public Str

2022-04-12 11:02:16 281

原创 go:linkname must refer to declared function or variable

下载完 gin 框架之后报错# golang.org/x/sys/unix../../../go/pkg/mod/golang.org/x/[email protected]/unix/syscall_darwin.1_13.go:25:3: //go:linkname must refer to declared function or variable../../../go/pkg/mod/golang.org/x/[email protected]

2022-03-31 11:01:18 3498

原创 SimpleChannelInboundHandler 源码笔记

io.netty.util.internal.TypeParameterMatcher定义: 类型参数匹配器功能: 用于判断 SimpleChannelInboundHandler<?> 中传入参数是否是该handler要处理的 messageio.netty.channel.SimpleChannelInboundHandlerpublic abstract class SimpleChannelInboundHandler<I> extends ChannelInboun

2022-03-25 10:49:34 584

转载 ByteBuf 的释放

文章来源Reference counted objects 和 Netty官方文档翻译看完本篇文章在看ByteBuf 的回收 recycler,会更好理解自从Netty 4开始,对象的生命周期由它们的引用计数(reference counts)管理,而不是由垃圾收集器(garbage collector)管理了。ByteBuf是最值得注意的,它使用了引用计数来改进分配内存和释放内存的性能。每个对象的初始计数为1:ByteBuf buf = ctx.alloc().directBuffer();

2022-03-21 10:13:53 976

转载 Recycler 笔记

参考文章:Netty技术细节源码分析-Recycler对象池原理分析 和Netty之Recycler定义:基于线程本地堆栈的轻量级对象池。四个核心内部类DefaultHandle:对象的包装类,在Recycler中缓存的对象都会包装成DefaultHandle类。Stack:存储本线程回收的对象。对象的获取和回收对应Stack的pop和push,即获取对象时从Stack中pop出1个DefaultHandle,回收对象时将对象包装成DefaultHandle push到Stack中。Stack会

2022-03-18 17:38:13 221

原创 ByteBuf 笔记

/** * Netty 内存分配容器 ByteBuf */public class ByteBufDemo { public void doAlloc(ChannelHandlerContext ctx, UserModel userModel) { // 初始化容器内存大小, ByteBuf byteBuf = ctx.alloc().directBuffer().capacity(1024); /** * 经验表明,Byt

2022-03-17 16:14:52 428

原创 AbstractReferenceCountedByteBuf笔记

类定义public abstract class AbstractReferenceCountedByteBuf extends AbstractByteBuf {}public abstract class AbstractByteBuf extends ByteBuf {}public abstract class ByteBuf implements ReferenceCounted, Comparable<ByteBuf> {}ByteBuf申明了对接口ReferenceCou

2022-03-17 16:01:23 350

原创 ChannelPipeline 笔记

流通图下图描述了 {@link ChannelPipeline} 中的 {@link ChannelHandler} 通常如何处理 IO 事件。 IO 事件由 {@link ChannelInboundHandler} 或 {@link ChannelOutboundHandler} 处理,并通过调用 {@link ChannelHandlerContext} 中定义的事件传播方法转发到其最近的处理程序,例如 {@link ChannelHandlerContextfireChannelRead(Obje

2022-03-17 09:53:44 178

原创 AbstractChannelHandlerContext 笔记

类定义:abstract class AbstractChannelHandlerContext extends DefaultAttributeMap implements ChannelHandlerContext, ResourceLeakHint {}类属性:next && prev每个AbstractChannelHandlerContext都保存有两个属性, next和prev, 明显是做链表.volatile AbstractChannelHand.

2022-03-16 20:23:43 767

原创 JSONObject 使用方法小结

JSONObject 使用方法小结package com.sun.zuul.jsonObject;import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.JSONArray;import com.alibaba.fastjson.JSONObject;import java.util.*;public class JsonObjectTest { /** * put() 方法的第一个参数为 key 值,

2022-03-10 15:50:13 912

原创 Dubbo SPI机制学习总结(持续更新...)

参考文章:Dubbo的SPI机制分析首先来看看 Java SPI 的机制Java SPI 起初是提供给厂商做插件开发用的,例如数据库驱动java.sql.Driver,市面上各种各样的数据库,不同的数据库底层协议都不一样,为了方便开发者调用数据库而不用关心它们之间的差异,因此必须提供一个统一的接口来规范和约束这些数据库。有了统一的接口,数据库厂商就可以按照规范去开发自己的数据库驱动了。厂商开发好数据库驱动了,应用如何使用呢?该使用哪个驱动呢?以 MySQL 为例,早期手写 JDBC 时,开发者需要手动

2022-03-10 09:58:24 1178

转载 最简单的Servlet 编程

Servlet入门编写HTTP服务器其实是非常简单的,只需要先编写基于多线程的TCP服务,然后在一个TCP连接中读取HTTP请求,发送HTTP响应即可。但是,要编写一个完善的HTTP服务器,以HTTP/1.1为例,需要考虑的包括:识别正确和错误的HTTP请求;识别正确和错误的HTTP头;复用TCP连接;复用线程;IO异常处理;…这些基础工作需要耗费大量的时间,并且经过长期测试才能稳定运行。如果我们只需要输出一个简单的HTML页面,就不得不编写上千行底层代码,那就根本无法做到高效而可靠地开发。

2022-03-09 16:22:05 687

原创 编写HTTP Server

我们来看一下如何编写HTTP Server。一个HTTP Server本质上是一个TCP服务器,我们先用TCP编程的多线程实现的服务器端框架:package com.sun.zuul.http;import java.io.*;import java.net.ServerSocket;import java.net.Socket;import java.nio.charset.StandardCharsets;public class HttpServer { public stat

2022-03-09 15:52:08 192

原创 BufferedReader使用方法简单记录

场景从文件中读取数据public static void main(String[] args) { System.out.println("hello, world s ".toCharArray()); // 打印结果: "hello, world s "; try { /** * 读到缓存 */ char[]

2022-03-09 10:21:18 1719

面经--倾听潮汐.pdf

面经--倾听潮汐.pdf

2021-03-10

五月算法精选合集.pdf

五月算法精选合集.pdf

2021-03-10

空空如也

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

TA关注的人

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