12 2025 档案
摘要:` class MinStack{ Deque<Integer> stack; Deque<Integer> minStack; int min = Integer.MAX_VALUE; public MinStack() { stack = new ArrayDeque<>(); minStack
阅读全文
摘要:` class LRUCache{ class LinkedNode{ int key; int value; LinkedNode next; LinkedNode prev; public LinkedNode(){} public LinkedNode(int key, int value){
阅读全文
摘要:CSMA/CD(Carrier Sense Multiple Access with Collision Detection,载波侦听多点接入/冲突检测),是以太网早期(半双工共享介质)使用的媒体访问控制协议。 工作原理 某站点准备发送数据时,先侦听信道,若信道空闲则会立即发送数据进行冲突检测, 若
阅读全文
摘要:1.UDP(面向报文) 定义:UDP对于应用层交给他的数据始终保持原始报文的边界,既不拆分也不合并。 发送方:应用进程每次通过sendto系统调用UDP写入一个消息,UDP直接在这个前面加入一个UDP首部形成一个完整的UDP数据报,交给网络层就对应一个IP数据报。 接收方:应用进程每次通过recvf
阅读全文
摘要:1.根据目的分类: 创建型模式(创建对象)、结构性模式(处理类和对象的组合)、行为型模式(描述类和对象如何交互和怎么分配职责)。 2.根据目的分类: 类模式(处理类和子类之间的关系)、对象模式(处理对象之间的关系) 面向对象概述 优点:可维护,可复用可拓展,灵活性高 特性:封装,多态,继承 衡量软件
阅读全文
摘要:OSI七层模型(从低到高): 1.物理层:建立物理连接 2.数据链路层:在通信的实体间建立数据链路连接 3.网络层:进行逻辑地址寻址,实现不同网络之间的路径选择 4.传输层:提供应用进程之间的逻辑通信,建立连接(如TCP) 5.会话层:建立,管理,终止对话 6.表示层:提供数据格式转化服务 7.应用
阅读全文
摘要:SpringMVC是Spring框架里处理web请求的核心模块,它的核心组件包括:前端控制器DispatcherServlet,处理器映射HandlerMapping,处理适配器HandlerAdapter,视图解析器ViewResolver,异常处理器HandlerExceptionResolve
阅读全文
摘要:1.双指针法 public int trap(int[] height) { int ans = 0; int l=0,r=height.length-1; int lMax=height[0],rMax=height[r]; while(l<r){ if(height[l]<height[r]){
阅读全文
摘要:public List<List> threeSum(int[] nums) { if(nums == null || nums.length < 3){ return new ArrayList<>(); } 数组排序 Arrays.sort(nums); List<List> list = ne
阅读全文
摘要:IOC IOC即为控制反转,Spring不再需要我们手动new新对象,而是交给Spring容器,由容器统一管理对象的生命周期和对象的依赖关系。 IOC实现最主要的方式为依赖注入(DI), 容器在创建对象时会将其所依赖的其他对象注入进去,比如Controller中需要Dao对象,容器会直接将Dao提供
阅读全文
摘要:对Bean的理解: Bean就是由Spring来管理的Java对象,不再需要使用new关键字来创建,它从创建到销毁都是由Spring来负责,像Service,Controller,Dao只要他们带着对应的注解,那么他们就是一个Bean。Spring提供了XML创建Bean和现在最常用的通过注解配置的
阅读全文
摘要:集群三大件 kubeadm:用来初始化集群的指令。 kubelet:在集群中的每个节点上用来启动 Pod 和容器等。 kubectl:用来与集群通信的命令行工具。 namespace常用命令: kubectl get pod -A 查看所有的 pod kubectl get ns 查看所有的命名空间
阅读全文
摘要:盛水的总量为左右边界的差*两个边界的最小值 本题的一个重要思路是 看短板 因为无论你最高处再高他的总量是取决于你的最小值。 本题使用双指针算法,从数组的两个边界开始,找到两个边界的最小值向对方靠近。当两个边界重合的时候返回最大值即可。 时间复杂度:O(N),双指针总计最多遍历整个数组一次。 空间复杂
阅读全文
摘要:A需要依赖B,B也需要依赖A的情况就是循环依赖。 Spring通过三级缓存的机制来解决循环依赖,其中一级缓存存放的是完全初始化好的Bean,二级缓存存放的是实例化好但没有初始化的Bean,三级缓存存放的是Bean工厂。 创建AB的过程如下: 1.开始创建A: 此时缓存中没有A,Spring调用A的构
阅读全文
摘要:初级方法:排序 简单易懂 进阶方法:哈希集合 首先进行去重操作,将其转成哈希集合,之后进行遍历集合,这里的一个重要思路是找最小数字,查找对每一个数字的上一个数,若其存在则说明还有比他更小的数字存在于集合中,然后直接continue,若其是最小的,则依次查找其后续的数字直到其不存在。 ps:若当前最大
阅读全文
摘要:初步思路: 将每一个字符串拆解成字符列表,将每一个列表重新排序后组成新的字符串,之后看该字符串是否存在于hashmap里,若存在则将原字符串加在其对应的列表中,不存在则创建新的键值对。 后续优化: 使用hashmap的getOrDefault方法节约时间复杂度 ps: 最后新建列表的操作可以省略,直
阅读全文
摘要:k8s的发展历程 传统部署时代: 早期,应用程序直接在物理服务器上运行,无法为物理服务器中的应用程序定义资源边界,这会导致资源分配问题。例如,如果在物理服务器上运行多个应用程序,则可能会出现一个应用程序占用大部分资源的情况,结果可能导致其他应用程序的性能下降。一种解决方案是在不同的物理服务器上运行每
阅读全文
浙公网安备 33010602011771号