自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(96)
  • 资源 (5)
  • 收藏
  • 关注

原创 如何在window打开超1G以上的文本文件

3、然后用命令打开:Get-Content .\error.log -Encoding UTF8 | Out-GridView。1、打开PowerShell。

2024-09-14 14:16:36 1067

原创 数据结构-图

1)深度优先遍历,从初始访问结点出发,初始访问结点可能有多个邻接结点,深度优先遍历的策略就是首先访问第一个邻接结点,然后再以这个被访问的邻接结点作为初始结点,访问它的第一个邻接结点,每次都在访问完当前结点后首先访问当前结点的第一个邻接结点。图的邻接矩阵表示可以通过二维数组来实现,其中数组的索引代表图中顶点的位置,数组的元素表示顶点之间的连接关系(例如,权重或者是否存在连接)。邻接矩阵是表示图形中顶点之间相领关系的矩阵,对于n个顶点的图而言,矩阵的row和col表示的是1....n个点。结点也可以称为顶点。

2024-09-02 15:01:07 758 1

原创 开源ftp工具

有许多优秀的开源FTP(File Transfer Protocol)工具可供选择,这些工具适用于不同的场景和需求。下面列出了一些流行的开源FTP客户端和服务器工具,以及它们的特点和适用场景。

2024-09-02 14:49:37 538

原创 算法题-双指针-环型链表

如果链表中有某个节点,可以通过连续跟踪next指针再次到达,则链表中存在环。为了表示给定链表中的环,评测系统内部使用整数pos来表示链表尾连接到链表中的位置(索引从0开始)。给你一个链表的头节点head,判断链表中是否有环。输入:head=[3,2,0,-4],pos=1。解释:链表中有一个环,其尾部连接到第二个节点。解释:链表中有一个环,其尾部连接到第一个节点。输入:head=[1,2],pos=0。pos为-1或者链表中的一个有效索引。输入:head=[1],pos=-1。解释:链表中没有环。

2024-09-02 14:48:57 253

原创 算法题-双指针应用-移动0

给定一个数组nums,编写一个函数将所有0移动到数组的末尾,同时保持非零元素的相对顺序。请注意,必须在不复制数组的情况下原地对数组进行操作。输入:nums=[-9,-1,0,3,5,12]输入:nums=[0,1,0,3,12]输出:[-9,-1,3,5,12,0]输出:[1,3,12,0,0]输入:nums=[0]

2024-09-02 11:07:48 242

原创 算法题-双指针应用-合并两个有序数组

给你两个按非递减顺序排列的整数数组nums1和nums2,另有两个整数m和n,分别表示nums1和nums2中的元素数目。输入:nums1=[1,2,3,0,0,0],m=3,nums2=[2,5,6],n=3。合并结果是[1,2,2,3,5,6],其中斜体加粗标注的为nums1中的元素。输入:nums1=[0],m=0,nums2=[1],n=1。输入:nums1=[1],m=1,nums2=[],n=0。解释:需要合并[1,2,3]和[2,5,6]。输出:[1,2,2,3,5,6]

2024-09-01 23:04:16 246

原创 算法题-双指针应用-找出字符串中第一个匹配项的下标

输入:haystack = "leetcode", needle = "leeto"输入:haystack = "sadbutsad", needle = "sad"解释:"leeto" 没有在 "leetcode" 中出现,所以返回 -1。输入:haystack = "a", needle = "a"解释:"a" 在 "a" 中出现,所以返回 0。解释:"sad" 在下标 0 和 6 处匹配。第一个匹配项的下标是 0 ,所以返回 0。

2024-09-01 11:53:20 194

原创 算法题-双指针应用-字典序最小回文串

对于两个长度相同的字符串a和b,在a和b出现不同的第一个位置,如果该位置上a中对应字母比b中对应字母在字母表中出现顺序更早,则认为a的字典序比b的字典序要小。解释:将"egcfe"变成回文字符串的最小操作次数为1,修改1次得到的字典序最小回文字符串是"efcfe",只需将'g'改为'f'。解释:将"seven"变成回文字符串的最小操作次数为1,修改1次得到的字典序最小回文字符串是"neven"。解释:将"abcd"变成回文字符串的最小操作次数为2,修改2次得到的字典序最小回文字符串是"abba"。

2024-08-30 21:19:38 295

原创 算法题-双指针应用-反转字符串

不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给出。输入:s = ["H","a","n","n","a","h"]输入:s = ["h","e","l","l","o"]输出:["h","a","n","n","a","H"]输出:["o","l","l","e","h"]

2024-08-30 17:14:06 211

原创 算法题-双指针应用-移除元素

元素的顺序可能发生改变。更改nums数组,使nums的前k个元素包含不等于val的元素。解释:你的函数应该返回 k = 5,并且 nums 中的前五个元素为 0,0,1,3,4。解释:你的函数函数应该返回 k = 2, 并且 nums 中的前两个元素均为 2。输入:nums = [0,1,2,2,3,0,4,2], val = 2。输出:5, nums = [0,1,4,0,3,_,_,_]输入:nums = [3,2,2,3], val = 3。输出:2, nums = [2,2,_,_]

2024-08-30 17:01:19 261

原创 算法题-双指针应用-删除有序数组中的重复项

函数应该返回新的长度 5, 并且原数组。,返回删除后数组的新长度。删除重复出现的元素,使每个元素。的前五个元素被修改为 0。

2024-08-30 13:55:46 243

原创 算法题-链表反转

将单链表的链接顺序反转过来。输入:1→2→3→4→5。输出:5→4→3→2→1。

2024-08-19 22:42:02 232

原创 ThreadLocal是什么,怎么用

在 Java 中是一个提供线程局部变量的工具类。这些变量对于不同的线程是隔离的,即每个线程都可以独立地更改自己所拥有的变量副本,而不会影响到其他线程。非常适合用在多线程环境下,每个线程都需要维护一个独立的状态或者数据副本的场景。

2024-08-19 22:31:09 371

原创 SSE协议

SSE协议,全称Server-Sent Events(服务器发送事件),是一种用于服务器主动向客户端推送数据的技术,也被称为“事件流”(Event Stream)。它基于HTTP协议,通过长连接的方式实现服务器向客户端的实时数据推送。

2024-08-19 11:05:16 1687

原创 线上CPU彪高怎么解决

线上CPU飙高是一个常见的问题,它可能由多种原因引起,包括但不限于代码中存在的性能瓶颈、资源泄露、不当的线程使用或外部服务的压力等。

2024-08-19 11:00:29 600

原创 Spring/Spring Boot/微服务/Spring Cloud

待写。

2024-08-19 10:52:15 313

原创 开源ftp工具

有许多优秀的开源FTP(File Transfer Protocol)工具可供选择,这些工具适用于不同的场景和需求。下面列出了一些流行的开源FTP客户端和服务器工具,以及它们的特点和适用场景。

2024-08-13 14:32:02 565

原创 vsftp主动模式和被动模式的区别

vsftpd(Very Secure FTP Daemon)的主动模式(PORT模式)和被动模式(PASV模式)在数据传输方式上存在显著的区别。

2024-08-13 14:19:46 800

原创 二叉树的遍历

二叉树的遍历是二叉树操作中的基本问题之一,主要有四种遍历方式:前序遍历(Preorder Traversal)、中序遍历(Inorder Traversal)、后序遍历(Postorder Traversal)和层序遍历(Level-Order Traversal,也称为广度优先遍历,前三种也称为深度优先遍历)。以下是用Java实现这些遍历方式的基本方法。

2024-08-04 17:30:00 348

原创 给一个正整数,如何判断它是不是2的整数次幂

在Java中,判断一个正整数是否是2的整数次幂,可以通过几种方法来实现。

2024-08-04 10:45:00 544

原创 求出两个整数的最大公约数

计算两个整数的最大公约数(Greatest Common Divisor, GCD)时,常用的高效算法是欧几里得算法(Euclidean algorithm)。这个算法的基本思想是:对于两个正整数a和b(假设a>b),它们的最大公约数等于a除以b的余数c和b之间的最大公约数。递归地应用这个过程,直到余数为0,此时被除数就是两数的最大公约数。例如,计算48和18的最大公约数,输出将会是6。方法中,使用了递归的方式来实现欧几里得算法。写一段代码,求出两个整数的最大公约数,要尽量优化算法的性能。

2024-08-03 08:45:00 1805

原创 实现一个栈,该栈带有出栈(pop)、入栈(push)、取最小元素(getMin)3个方法。要保证这3个方法的时间复杂度都是O(1)

操作的时间复杂度均为 O(1),我们需要在栈中存储元素的同时,额外维护一个最小值的信息。一个常见的方法是使用两个栈,一个用于存储实际元素(我们称之为。实现一个栈,该栈带有出栈(pop)、入栈(push)、取最小元素(getMin)3个方法。操作会检查两个栈的栈顶元素是否相同(即被移除的元素是否是当前最小值),如果是,则同时从两个栈中移除。类,它使用两个栈来分别维护数据和对应位置的最小值。),另一个用于存储对应位置的最小值(我们称之为。也会进行相应的操作以保持同步,从而确保。操作的时间复杂度为 O(1)。

2024-08-01 10:49:00 271

原创 有一个单向链表,链表中有可能出现“环”,判断该链表是否为有环链表

在Java中,检测单向链表中是否存在环的最优化算法之一是“快慢指针”算法(也称为Floyd的乌龟和兔子算法)。如果链表中存在环,那么快指针最终会追上慢指针,它们会在环内的某个位置相遇。方法,该方法接收链表的头节点作为参数,并返回一个布尔值,指示链表中是否存在环。有一个单向链表,链表中有可能出现“环”,写出程序判断该链表是否为有环链表。是链表节点的定义,每个节点包含一个整数值和一个指向下一个节点的指针。方法中,我们创建了两个示例链表,一个包含环,另一个不包含环,以演示。

2024-08-01 09:08:43 184

原创 java中的LinkedList方法poll和peek的区别

是否移除元素peek()方法仅查看队列头部的元素而不移除它,而poll()方法移除并返回队列头部的元素。返回值:在队列非空的情况下,两者都返回队列头部的元素。但在队列为空的情况下,两者都返回null,但背后的行为(是否移除元素)是不同的。异常处理:两者都不会因为队列为空而抛出异常,这是它们与如remove()(在某些集合类中)方法的一个主要区别,后者在尝试从空集合中移除元素时会抛出异常。

2024-07-31 14:47:05 1194

原创 能否对JVM调休,让其几乎不发生Full GC

在Java虚拟机(JVM)中,Full GC(全局垃圾收集)是清理整个堆内存区域的过程,包括年轻代(Young Generation)、老年代(Old Generation)以及永久代/元空间(PermGen/Metaspace,取决于JVM版本)。减少或几乎避免Full GC的发生是许多高性能Java应用所追求的目标,但完全避免Full GC通常是不现实的,因为随着应用的运行,老年代中的对象会逐渐增多,最终需要被清理。

2024-07-30 09:00:00 466

原创 STW(JVM)

JVM中的STW(Stop-The-World)是指在进行垃圾回收(Garbage Collection,GC)或其他需要暂停所有应用线程的操作时,JVM会暂停所有正在执行的Java线程,以确保这些操作能够安全、准确地进行。这种暂停所有线程的状态被称为“Stop-The-World”,简称STW。

2024-07-28 15:45:00 572

原创 单机几十万并发的系统JVM如何优化

对于单机支持几十万并发的系统,JVM(Java虚拟机)的优化至关重要。JVM优化旨在提高应用程序的性能、响应速度和稳定性,同时减少资源消耗和垃圾回收(GC)的频率。

2024-07-28 14:24:53 553

原创 查找算法-二分查找(折半查找)

二分查找(Binary Search)算法是一种在有序数组中查找特定元素的搜索算法。它通过不断将数组分成两半,判断目标值可能存在的区间,从而缩小搜索范围,直到找到目标值或搜索范围为空。二分查找的时间复杂度为O(log n),其中n是数组的长度。

2024-07-28 07:15:00 319

原创 查找算法-插值查找

插值查找算法(Interpolation Search)是二分查找算法的一种改进,特别适用于数据分布比较均匀的有序数组。它根据要查找的键值与数组两端值的差异比例来估算查找的中间位置,从而减少了不必要的比较次数,提高了查找效率。以下是插值查找算法的关键知识点和Java实现示例。

2024-07-27 10:05:45 198

原创 查找算法-顺序(线性)

顺序查找算法虽然简单,但在处理大量数据时效率较低。在实际应用中,如果数据已经排序,通常会选择更高效的查找算法(如二分查找)来提高查找效率。然而,在数据量较小或数据未排序的情况下,顺序查找仍然是一个可行的选择。

2024-07-27 10:04:58 468

原创 递归算法知识点

递归算法是计算机科学中一种重要的算法设计技术,它通过函数自我调用的方式来解决问题。递归算法通常涉及两个关键部分:递归基(递归终止条件)和递归步骤(将问题分解为更小的子问题)。

2024-07-27 09:30:00 515

原创 MQTT协议

定义:MQTT是ISO标准(ISO/IEC PRF 20922)下基于发布/订阅范式的消息协议,它工作在TCP/IP协议族上,适用于硬件性能低下的远程设备以及网络状况不佳的情况。起源:MQTT最初由IBM于上世纪90年代晚期发明和开发,其最初的用途是将石油管道上的传感器与卫星相链接。特点:轻量级、简单、开放、易于实现,特别适用于IoT设备和服务的多样化应用场景。

2024-07-26 15:13:59 615

原创 排序-计数排序

计数排序(Counting Sort)是一种非比较型整数排序算法,其核心在于将输入的数据值转化为键存储在额外开辟的数组空间中。作为一种线性时间复杂度的排序,它要求输入的数据必须是有确定范围的整数。

2024-07-26 10:43:25 182

原创 Arthas诊断工具

Arthas 是一款线上监控诊断产品,通过全局视角实时查看应用 load、内存、gc、线程的状态信息,并能在不修改应用代码的情况下,对业务问题进行诊断,包括查看方法调用的出入参、异常,监测方法执行耗时,类加载信息等,大大提升线上问题排查效率。

2024-07-23 22:18:43 364

原创 unzip命令解压出现中文乱码

乱码问题通常与字符编码不兼容有关。解决这类问题通常需要你了解文件或系统的原始编码和目标编码,并使用适当的工具或命令来进行转换。在处理ZIP文件时,特别要注意文件名和文件内容可能使用不同的编码。

2024-07-22 09:15:28 1775

原创 贪心算法思想

贪心算法(Greedy Algorithm)是一种在每一步选择中都采取在当前状态下最好或最优(即最有利)的选择,从而希望导致结果是全局最好或最优的算法。贪心算法并不总是能得到最优解,但它对许多问题能提供很好的近似解,并且由于其实现简单、速度快,在解决许多实际问题时非常有效。

2024-07-20 09:30:00 1074

原创 MobaXterm远程工具

MobaXterm是一款由Mobatek开发的多功能远程计算机管理工具,专为网络工程师、系统管理员、开发者和技术支持人员设计。

2024-07-19 14:53:46 724

原创 计算机算法思想

计算机算法思想是计算机科学中非常重要的组成部分,它们为解决问题提供了系统的、可重复的方法论。

2024-07-18 22:15:43 573

原创 创建型-工厂方法模式(Factory Method)

工厂方法模式(Factory Method Pattern)是一种常用的类创建型设计模式,其核心精神是封装类中变化的部分,提取其中个性化善变的部分为独立类。通过定义工厂父类负责定义创建对象的公共接口,而子类则负责生成具体的对象。

2024-07-16 10:45:00 635

原创 排序-归并排序

归并排序(Merge Sort)是一种分而治之的排序算法。它将数组分成两半,对每半部分递归地应用归并排序,然后将排序好的两半合并在一起。

2024-07-16 08:15:00 202

redis-3.2.12-2.el7.aarch64

1.redis-3.2.12-2.el7.aarch64 2.redis-3.2 centos7 arm64 安装包 3.安装命令:rpm -ivh redis-3.2.12-2.el7.aarch64.rpm 4.如提示需要依赖jemalloc,请先安装压缩包里的jemalloc,安装命令:rpm -ivh jemalloc-3.6.0-1.el7.aarch64.rpm

2024-07-23

nginx-1.26.1-2.el7.ngx.aarch64

1.nginx 1.26版本 2.nginx 1.26 arm64 centos7的rpm包 3.下载后可以离线安装 4.安装命令rpm -ivh nginx-1.26.1-2.el7.ngx.aarch64.rpm 5.安装后启动systemctl start nginx 6.重启systemctl restart nginx 7.关闭systemctl stop nginx 8.配置文件在/etc/nginx/nginx.conf和/etc/nginx/conf.d

2024-07-23

redis-window-3.2

Redis在window的解压运行包 1、解压后,不需要安装 2、点击start.bat直接命令窗口运行,关掉命令窗口即关闭redis 3、配置文件为redis.windows.conf

2024-07-10

notepad的window安装包8.4.4版本

window安装包,国外下载比较慢

2024-07-10

redis-6.0.19-1.el7.remi.x86-64.rpm

redis的rpm包,用于离线安装,步骤如下: 1、上传文件到centos服务 2、执行命令rpm -ivh redis-6.0.19-1.el7.remi.x86_64.rpm即可 3、启动systemctl start redis 4、关闭systemctl stop redis 5、配置:/etc/refid.conf

2024-07-05

java_反编译器

java反编译器,平时开的时候查看class文件里的内容,非常实用

2014-05-13

java项目-模拟银行系统源代码

java项目-模拟银行系统源代码,仅供学习用

2011-10-18

android_ADTA-10.0.0

android-adt-10.0.0供大家学习用

2011-10-18

java面试宝典2010版

给JAVA程序员的面试宝典,仅供学习用!

2011-10-18

空空如也

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

TA关注的人

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