自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

一点一滴铺就人生

以兴趣为动力,为自己拼出一番天地

  • 博客(405)
  • 资源 (1)
  • 收藏
  • 关注

原创 滑动窗口刷题指南

给你一个字符串 s 、一个字符串 t。返回 s 中涵盖 t 所有字符的最小子串。如果 s 中不存在涵盖 t 所有字符的子串,则返回空字符串 “”。给你两个字符串 s1 和 s2 ,写一个函数来判断 s2 是否包含 s1 的排列。给定两个字符串 s 和 p,找到 s 中所有 p 的 异位词 的子串,返回这些子串的起始索引。给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。异位词 指由相同字母重排列形成的字符串(包括相同的字符串)。换句话说,s1 的排列之一是 s2 的 子串。

2023-04-14 16:37:20 701 1

原创 二叉树刷题指南

完全二叉树 的定义如下:在完全二叉树中,除了最底层节点可能没填满外,其余每层节点数都达到最大值,并且最下面一层的节点都集中在该层最左边的若干位置。给定二叉搜索树(BST)的根节点 root 和要插入树中的值 value ,将值插入二叉搜索树。返回插入后二叉搜索树的根节点。给你一个含重复值的二叉搜索树(BST)的根节点 root ,找出并返回 BST 中的所有 众数(即,出现频率最高的元素)。所以结果应当返回修剪好的二叉搜索树的新的根节点。给你一棵 完全二叉树 的根节点 root ,求出该树的节点个数。

2023-04-07 12:23:30 639

原创 一文说透容器跨主机网络

对网络的理解,是任何一个系统故障排错的制胜法宝

2023-03-05 13:04:03 1026

原创 基于Istio的高级流量管理二(Envoy流量劫持、Istio架构、高级流量管理)

Istio对入站流量、Mesh流量、出站流量的统一控制管理给出了一个比较完美的答案

2023-02-26 16:18:21 2219 1

原创 基于Istio的高级流量管理一(为什么需要服务网格?深入理解Envoy)

Service Mesh是微服务治理的一种框架,而Istio是云原生中微服务治理的最佳实践

2023-02-24 00:15:46 935

原创 Go语言基础(十五):垃圾回收机制(三色标记)

常见GC算法:引用计数、标记清除、分代回收

2023-02-19 18:05:27 1107

原创 必考设计模式

设计模式、数据结构与算法是写好代码的基本功

2022-11-17 17:57:47 992

原创 K8S生产化集群运维:节点资源管理(Kubelet)、降本增效

节点资源的合理管理是集群稳定的很重要的一环

2022-09-24 18:05:58 3870

原创 Kubernetes之七层负载均衡:自研Ingress技术架构及相应思考(待总结)

七层负载均衡在Kubernetes上的一些设计架构思考

2022-09-18 17:52:21 312

原创 详谈负载均衡(微服务架构下的高可用挑战)

Kubernetes Service 服务发现核心就是负载均衡

2022-09-12 23:33:58 800

原创 Kubernetes之Pod生命周期管理

Kubernetes中设计最巧妙的莫过于Pod,让我们来揭开它的神秘面纱吧...

2022-09-12 21:54:18 1804

原创 Kubernetes开放接口:CRI、CNI、CSI

云原生生态极大丰富的重要原因:制定接口标准

2022-09-11 21:08:05 2822

原创 Kubernetes控制平面组件:Kubelet

Kubernetes的node节点大管家

2022-09-04 20:36:59 1449 4

原创 Kubernetes控制平面组件:Controller-Manager控制器管理

控制器是Kubernetes的代码核心设计模式

2022-09-04 19:01:38 1212

原创 Kubernetes控制平面组件:Scheduler调度器

一个好的调度器是k8s集群的服务能稳定、高效运行的保证

2022-09-03 19:51:26 775

原创 Kubernetes控制平面组件:API Server

Kubernetes的中枢神经

2022-08-28 21:31:17 2277 2

原创 Kubernetes 控制平面组件:etcd

基于Raft协议的kubernetes高性能键值对数据库!

2022-08-21 19:56:41 1671

原创 kubernetes架构原则和对象设计

容器云是未来服务部署的主流架构!

2022-08-07 17:02:56 1407 1

原创 Docker核心技术

容器云是推动微服务发展的主要推手

2022-07-30 20:07:39 2049 4

原创 Gin框架(一):基础概览

文章目录一、Gin框架介绍二、Gin框架安装与使用1、安装2、示例三、RESTful API四、Gin渲染1、HTML渲染2、自定义模板函数3、静态文件处理4、使用模板继承5、 补充文件路径处理6、JSON渲染五、获取参数1、获取querystring参数2、获取form参数3、获取json参数4、获取path参数5、参数绑定(推荐, 兼容以上所有)六、文件上传1、单个文件上传2、多个文件上传七、重定向1、HTTP重定向2、路由重定向八、Gin路由1、普通路由2、路由组3、路由原理九、Gin中间件1、定义中

2022-01-09 15:56:02 5023 2

原创 Go语言基础(十四):单元测试

文章目录一、Go Test工具二、测试函数1、测试函数示例2、测试组3、子测试4、测试覆盖率三、基准测试1、基准测试函数格式2、基准测试示例2、性能比较函数3、重置时间4、并行测试三、Setup与TearDown1、TestMain2、子测试的Setup与Teardown四、示例函数1、示例函数的格式2、示例函数示例在我看来,一位合格的程序猿,应当是开发(主),测试、网络、基础运维都有一定的知识积累的,这样你的思维才不会局限于开发的固有视野中,而是从一个全局视野去思考,解决问题。因此今天我们来学习一下,基

2022-01-01 15:52:16 501

原创 Go语言基础(十三):网络编程

文章目录一、实现TCP通信1、TCP协议2、TCP服务端3、TCP客户端4、TCP粘包(1)为什么会出现粘包?(2)解决方法二、实现UDP通信1、UDP协议2、UDP服务端3、UDP客户端网络基础、socket编程就不普及了,对我来说,真的是老油条的概念了。python网络编程入门篇、进阶篇一、实现TCP通信1、TCP协议TCP/IP(Transmission Control Protocol/Internet Protocol) 即传输控制协议/网间协议,是一种面向连接(连接导向)的、可靠的、基于

2021-12-26 18:51:02 256

原创 Go语言基础(十二):并发编程

文章目录一、前言二、goroutine1、使用goroutine2、启动goroutine示例3、main优雅谢幕(sync.WaitGroup)三、goroutine与线程1、可增长的栈2、goroutine调度3、GOMAXPROCS四、channel1、channel类型2、创建channel3、channel操作(1)发送(2)接收(3)关闭4、无缓冲的通道5、有缓冲的通道6、for range从通道循环取值7、单向通道8、通道总结五、worker pool(goroutine池)六、select多

2021-12-25 18:09:59 1978

原创 Go语言基础(十一):反射

文章目录一、前言1、变量的内在机制2、反射介绍3、reflect包二、TypeOf1、基本使用2、type(name、kind区别)三、ValueOf1、通过反射获取值3、通过反射设置变量的值4、isNil()和isValid()(1)isNil()(2)isValid()四、结构体反射1、与结构体相关的方法2、与结构体相关的方法3、结构体反射示例五、写在最后( 反射是把双刃剑)一、前言常用于从未知的数据结构中去获取想要的数据。主要在协同开发中,通过调用其他人的写的api获取数据时使用。1、变量的内在

2021-12-23 22:02:59 325

原创 Go语言基础(十):接口

文章目录一、为什么要用接口?二、接口的定义三、实现接口的条件四、接口类型变量五、值接收者和指针接收者实现接口的区别1、值接收者实现接口2、指针接收者实现接口3、面试题六、类型与接口的关系1、一个类型实现多个接口2、多个类型实现同一接口七、接口嵌套八、空接口1、空接口的定义2、空接口的应用(1)空接口作为函数的参数(类似范型?)(2)空接口作为map的值3、类型断言在Go语言中接口(interface)是一种类型,一种抽象的类型。interface是一组method的集合,是 鸭子类型 、多态性(其实go

2021-12-23 21:55:59 497 2

转载 while read line中执行ssh出现只执行一次

Linux专栏收录该内容1 篇文章0 订阅订阅专栏今天在写脚本统计大数据组的所有主机的ssd盘的挂载点位置的时候,先将主机名先写好在一个文本中,然后在脚本中循环读取主机名,然后使用ssh远程执行命令,发现只执行一次就退出了,但是把ssh远程命令注销之后可以完整的将while循环执行完毕。参考:http://bbs.chinaunix.net/thread-3582099-1-1.htmlhttps://blog.csdn.net/eclipse_c/article/details/5191211

2021-10-22 10:45:34 545

原创 前缀和相关:区域和检索 - 数组不可变、二维区域和检索 - 矩阵不可变...

给定一数组A。前缀和:新建一数组B,数组中每一项B[i]保存A中[0…i]的和;后缀和:新建一数组B,数组中每一项B[i]保存A中[i…n-1]的和;前缀积:新建一数组B,数组中每一项B[i]保存A中[0…i]的积;后缀积:新建一数组B,数组中每一项B[i]保存A中[i…n-1]的积;一、区域和检索 - 数组不可变class NumArray: def __init__(self, nums: List[int]): self.sums, pre = [0],

2021-03-01 00:39:40 216

原创 多线程相关:按序打印、交替打印FooBar、交替打印字符串

文章目录一、按序打印二、交替打印FooBar三、交替打印字符串(不懂)一、按序打印from threading import Lockclass Foo: def __init__(self): self.firstJobDone = Lock() self.secondJobDone = Lock() self.firstJobDone.acquire() self.secondJobDone.acquire() #

2021-02-17 20:21:52 324 1

原创 布隆过滤器及LRU Cache的实现

文章目录一、Bloom Filter二、LRU Cache1、OrderedDict实现2、哈希 + 双向链表(面试建议)一、Bloom Filter它是什么?:一个很长的二进制向量和一系列随机映射函数。用途:布隆过滤器可以用于检索、一个元素是否在一个集合中。优点:是空间效率和查询时间都远远超过一般的算法,缺点:是有一定的误识别率和删除困难。from bitarray import bitarrayimport mmh3class BloomFilter: def __in

2021-02-11 14:53:41 439

原创 位运算相关:2的幂、翻转图像、颠倒二进制位、N皇后II、比特位计数 ...

文章目录一、位1的个数二、2的幂三、颠倒二进制位(经典)四、N皇后II一、位1的个数class Solution: def hammingWeight(self, n: int) -> int: count = 0 while n: n = n & (n - 1) count += 1 return count二、2的幂class Solution: def isP

2021-02-10 22:40:29 434 2

原创 排序相关:数组的相对排序、最小的k个数(快排)、合并区间、翻转对 ...

文章目录一、数组的相对排序(计数排序)二、合并区间(单纯排序)三、最小的k个数(快排)四、翻转对(归并排序)一、数组的相对排序(计数排序)# 我们使用tmp数组对arr1中每个元素进行计数排序# 然后遍历arr2先把这个顺序的元素依次存入res,并把tmp中当前存入元素的值改为0# 最后遍历tmp数组,把剩下元素按升序存进resclass Solution: def relativeSortArray(self, arr1: List[int], arr2: List[int]) -&g

2021-02-09 20:31:46 312

原创 九大排序算法详解

文章目录一、选择排序二、插入排序(链表实现)三、冒泡排序四、快速排序五、归并排序六、堆排序一、选择排序小凰凰是个不甘平凡的人,因此选择排序、冒泡排序的实现,也不愿采用随大流的双层循环的设计,因此使用了递归去实现!# 核心思想:其实就是对外层循环使用递归替代了,多了一个start参数去控制import mathdef choice_sort(nums, start): # terminator if start == len(nums) - 1: return nums

2021-02-09 11:00:28 388

原创 字典树、并查集相关:实现Trie、搜索推荐系统、朋友圈、被围绕的区域(未做) ...

文章目录一、字典树1、实现Trie2、单词搜索3、单词搜索II4、搜索推荐系统二、并查集1、省份数量2、岛屿数量3、被围绕的区域(暂时不会)一、字典树1、实现Trieclass Trie: def __init__(self): """ Initialize your data structure here. """ self.root = {} self.END_OF_WORD = '#' def

2021-02-07 23:28:52 338 1

原创 动态规划套题:零钱兑换、完全平方数

一、零钱兑换1、自顶向下class Solution: def coinChange(self, coins: List[int], amount: int) -> int: memo = {} def dp(n): # 记忆化查表 if n in memo: return memo[n] # 两个递归终止条件 if n == 0: return 0

2021-02-06 01:23:58 216

原创 动态规划套题:不同路径

文章目录一、不同路径1、自顶向下2、自底向上3、组合数学二、不同路径II1、自顶向下2、自底向上一、不同路径1、自顶向下class Solution: def uniquePaths(self, m: int, n: int) -> int: # dp 自顶向下 dp = [[0 for _ in range(n)] for _ in range(m)] def dfs(i,j): if i >= m or

2021-02-04 22:32:23 259

原创 动态规划相关:三角形最小路径和

文章目录一、爬楼梯1、自顶向下2、自底向上二、三角形最小路径和1、自顶向下2、自底向上三、完全平方数一、爬楼梯题目:假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?注意:给定 n 是一个正整数。1、自顶向下class Solution: memo = {1:1,2:2} def climbStairs(self, n: int) -> int: # dp 自顶向下 -> 记忆化递归

2021-02-04 22:30:04 326

原创 二分查找相关:x的平方根、搜索旋转排序数组、搜索二维矩阵 ...

文章目录一、x的平方根1、二分查找法2、牛顿迭代法二、搜索旋转排序数组1、还原数组+二分查找(不推荐)2、二分查找三、寻找旋转排序数组中的最小值四、搜索二维矩阵一、x的平方根建议: 再做下leetcode中的有效的完全平方数一题!1、二分查找法class Solution: def mySqrt(self, x: int) -> int: l, r = 0, x while l <= r: mid = (l + r)//2

2021-02-02 21:46:46 312

原创 贪心相关:柠檬水找零、买卖股票的最佳时机、分发饼干、跳跃游戏 ...

文章目录一、柠檬水找零二、买卖股票的最佳时机三、买卖股票的最佳时机II四、分发饼干五、模拟行走机器人(困难)六、跳跃游戏七、跳跃游戏II(困难)一、柠檬水找零注意:是按顺序收取,不是先把所有钱都收上来,然后再给别人分别找钱class Solution: def lemonadeChange(self, bills: List[int]) -> bool: five = ten = 0 for i, v in enumerate(bills):

2021-02-01 19:30:51 212

原创 DFS、BFS相关:二叉树的层序遍历、岛屿数量、扫雷游戏、单词接龙 ...

文章目录一、二叉树的层序遍历1、BFS + 二元组记录level2、BFS二、最小基因变化三、括号生成四、在每个树行中找到最大值五、岛屿数量六、扫雷游戏七、单词接龙八、单词接龙ii一、二叉树的层序遍历1、BFS + 二元组记录levelclass Solution: def levelOrder(self, root: TreeNode) -> List[List[int]]: if not root: return [] deque, res = co

2021-01-28 22:02:43 329 1

原创 分治与回溯相关:Pow(x,n)、多数元素、至少有K个重复字符的最长子串、N皇后 ...

一、Pow(x,n)题目:实现 pow(x, n) ,即计算 x 的 n 次幂函数。示例 1:输入: 2.00000, 10输出: 1024.00000示例 2:输入: 2.10000, 3输出: 9.26100示例 3:输入: 2.00000, -2输出: 0.25000解释: 2-2 = 1/22 = 1/4 = 0.25说明:-100.0 < x < 100.0n 是 32 位有符号整数,其数值范围是 [−231, 231 − 1] 。class S

2021-01-27 13:29:34 366

wordpress-5.0.2-zh_CN.tar.gz

wordpress-5.0.2-zh_CN.tar.gz

2020-05-10

空空如也

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

TA关注的人

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