自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Java IO流(超详细!!!)

本文介绍了Java IO流的基本概念和操作,重点讲解了文件创建、目录操作以及字节流的使用。首先,通过File类可以创建文件对象,并使用createNewFile()方法创建新文件。常用的文件操作方法包括获取文件名、绝对路径、父目录等。目录操作可以通过mkdir和mkdirs创建单级或多级目录,delete用于删除文件或空目录。接着,文章详细介绍了IO流的原理,分为输入流和输出流,以及字节流和字符流。字节流的核心类是InputStream和OutputStream,分别用于读取和写入字节数据。通过示例代码展示

2025-05-18 18:22:42 2426 1

原创 Java多线程(超详细版!!)

本文详细介绍了Java多线程的基本概念、实现方式及其应用场景。首先,文章解释了线程、进程和多线程的区别,指出线程是CPU调度的基本单位,而进程是程序的一次执行过程,通常包含多个线程。接着,文章介绍了三种创建线程的方法:继承Thread类、实现Runnable接口和实现Callable接口,并分析了各自的优缺点。其中,实现Runnable接口具有更高的灵活性,避免了单继承的限制,并且将任务与线程分离,符合面向对象设计原则。此外,文章通过“买票案例”和“龟兔赛跑”两个示例,展示了多线程在实际应用中的并发问题及其

2025-05-10 23:05:23 930

原创 Java 注解与反射(超详细!!!)

**反射**(Reflection)是一种 Java 程序**运行期间**的**动态**技术,可以在**运行时**(runtime)检査、修改其自身结构或行为。通过反射,程序可以访问、检测和修改它自己的类、对象、方法、属性等成员

2025-05-29 22:15:26 1150

原创 编译原理头歌实验:词法分析程序设计与实现(C语言版)

我们需要对五种单词符号进行识别分析,这里将单词符号分为三大块进行识别。首先判断字符是否为关键字或者标识符,并与已定义好的关键字进行比较,从而判断为关键字或者标识符;然后是数字的识别;最后是其他字符的判断,它们被一一定义好的判断进行识别,这样所有的字符便被识别出来了。标示符和关键字的判断if ((ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z')) //可能是标示符或者关键字syn = 2;break;syn = 1;break;

2025-05-08 22:35:55 945

原创 细究Java三大特性之封装、继承、多态

Java的三大特性是封装、继承和多态。以下是对这三大特性详细讲解。

2025-05-07 11:34:24 964

原创 基于Java多线程实现简单图片下载

笔者通过这个 Java 代码实现了一个多线程图片下载程序,利用 Thread 类和 Apache Commons IO 库的 FileUtils 来从指定的 URL 下载图片并保存到本地。

2025-05-06 22:54:45 1262

原创 基于 Spark 和 Hadoop 的空气质量数据分析与预测系统

通过这个项目,我将大数据技术(Spark、Hadoop)和 Web 开发(Flask、ECharts)结合在一起,打造了一个功能丰富、用户友好的空气质量分析与预测系统。无论是从数据处理到可视化,还是从用户交互到预测功能,这个系统都展示了现代技术的强大潜力。如果你对这个项目感兴趣,欢迎留言交流!私信分享源码。

2025-05-05 13:54:07 1736 2

原创 编译原理:由浅入深从语法树到文法类型

文法(Grammar):是一组规则,用于定义语言中句子的结构。终结符(Terminals):语言的基本符号,如单词、字符或记号(例如,ab等)。非终结符(Non-terminals):表示语法结构的符号,如“句子”、“名词短语”等(通常用大写字母表示,如SNP产生式(Productions):描述如何从非终结符生成符号串的规则,形式为A → α,其中A是非终结符,α是终结符和/或非终结符的串。开始符号(Start Symbol):文法的起点,通常用S表示。语言(Language)

2025-04-28 22:00:07 1102

原创 SQL 查询进阶:WHERE 子句与连接查询详解

WHERE 子句是 SQL 查询中不可或缺的部分,用于精确过滤数据。掌握 LIKE、IS NULL、IS NOT NULL、BETWEEN 和 IN 的使用,可以应对各种数据筛选需求。连接查询(JOIN)是处理多表数据的基础,INNER JOIN、LEFT JOIN、RIGHT JOIN 和自连接各有其适用场景,灵活运用可以高效地整合和分析数据。通过本文的讲解和示例,相信你已经对 WHERE 子句和连接查询有了更深入的理解。

2025-04-26 21:20:53 1037

原创 软件设计模式与体系结构:基于Java实现管道-过滤器架构

管道-过滤器架构的核心思想是将数据处理过程分解为一系列独立的过滤器,每个过滤器负责单一的功能,数据在过滤器之间通过管道传递。Filter 接口:定义了所有过滤器必须实现的process方法,负责处理输入数据并返回处理后的数据。具体过滤器类:将输入字符串转换为大写。:移除字符串中的标点符号。:将指定的单词替换为新单词。:为每个单词添加编号前缀。Pipeline 类:管理过滤器列表,负责将输入数据依次通过所有过滤器,生成最终输出。

2025-04-25 21:10:41 1410

原创 深入理解 DML 和 DQL:SQL 数据操作与查询全解析

DMLUPDATEDELETETRUNCATE)用于修改和删除数据,TRUNCATE适合快速清空表,DELETE提供更灵活的条件删除。DQLSELECT)通过WHEREDISTINCTCONCAT等功能实现精确查询,满足多样化需求。通过本文的讲解和示例,你应该能熟练掌握这些操作,并在实际项目中灵活运用。如果有更多疑问或高级用法需求,欢迎在评论区交流!

2025-04-21 23:11:39 1413

原创 Git拉分支技巧:从零开始创建并推送分支

通过以上步骤,你可以轻松创建一个新的 Git 分支,初始化仓库、同步远程代码、清理不需要的文件,并将更改推送到远程仓库。这些技巧不仅适用于个人项目,也是在团队协作中必备的基础技能。希望这篇文章能帮助你在 Git 分支管理上更进一步!如果有任何问题或补充,欢迎在评论区留言。

2025-04-20 22:25:32 2099

原创 掌握 MySQL:从命令行操作到数据类型与字段管理

MySQL 作为一款功能强大的数据库管理系统,其命令行操作、数据库类型、数据类型、字段管理以及外键功能为开发者提供了极大的灵活性。通过本文的介绍,你应该已经掌握了 MySQL 的基本操作、字段管理方法以及外键的使用。外键在数据库设计中尤为重要,它不仅帮助维护数据的一致性,还能通过级联操作简化数据管理。无论是构建简单的 Web 应用还是管理复杂的企业级数据库,MySQL 都是你不可或缺的工具。希望这篇博客能帮助你在 MySQL 的学习和应用中更进一步!如果你有任何问题或建议,欢迎在评论区留言。

2025-04-19 22:53:32 1049

原创 深入理解「二进制掩码」:从原理到实践

二进制掩码本质上是一个二进制数,用于通过位操作(如与、或、非、异或等)选择性地操作目标数据的某些位。掩码的每一位(bit)可以看作一个“开关”,决定是否对目标数据的对应位进行操作。二进制掩码是位操作的灵魂,掌握它不仅能提升代码效率,还能解锁许多高级编程技巧。从基础的位提取到复杂的子集枚举,掩码的应用无处不在。希望本文的讲解和代码示例能帮助你快速上手,并在实际项目中灵活运用。如果你有更多关于掩码的疑问或应用场景,欢迎在评论区留言交流!

2025-03-31 22:10:48 2099

原创 蓝桥杯真题_小蓝和小桥的讨论

你的代码使用归并排序计数来解决计算 (ai[left] + ai[right] > 0)(且 (left < right))的对数问题,但你提到“答案不对”。小蓝认为,如果一个主题对老师来说越有趣,那么这个主题就应该被优先讨论,因为老师的兴趣会高度激发学生的兴趣,而学生的兴趣是学习的动力。,那么对老师来说这是一个更有趣的组合,也就是说这个组合更应该被优先讨论。经过检查,当前代码的计数逻辑存在错误,导致结果偏大。小蓝和小桥是一所高中的好朋友,他们正在讨论下一次的课程。的趣味度,对学生来说有 bi。

2025-03-27 22:52:17 581

原创 深入剖析 「Java Lambda 」表达式:从原理到实战

Lambda 表达式本质上是一个匿名函数,它没有方法名,只有参数列表、函数体和返回值类型(通常由编译器推断)。

2025-03-27 22:51:39 968

原创 Java中的「快速幂」:原理、实现与应用

快速幂是 Java 中处理大数幂次计算的利器,其 (O(\log n)) 的时间复杂度使其在多种场景下表现出色。

2025-03-26 20:44:37 858

原创 Java 「排序」算法全汇总解析(全网最详细!!!)

排序算法是计算机科学中的基础且核心的内容,广泛应用于数据处理、搜索优化和算法设计等领域。

2025-03-26 20:39:21 841

原创 深度解析「前缀和」与「差分法」:高效算法的基石

在计算机科学和数据处理领域,(Prefix Sum)与(Difference Method)是两种基础且高效的算法技术。它们在处理数组的区间查询和区间修改操作时,能够显著提升计算效率,广泛应用于数据分析、图像处理、算法竞赛等多个场景。本文将深入探讨这两种技术的数学原理、应用场景、实现方法,并通过代码示例和可视化辅助,帮助读者全面掌握其精髓

2025-03-25 23:28:03 1082

原创 蓝桥杯真题-「单调栈」详解(Java)

题目意思:找一个子区间,使“长度 × 最小值”最大。样例验证:对于 ([1, 1, 3, 3, 1]),答案 6 来自子区间 ([3, 4])。解法:可以用单调栈高效计算每个元素作为最小值的最大子区间,复杂度 (O(n))。

2025-03-25 09:52:03 729

原创 JAVA 单调栈习题解析

单调栈:给定一个长度为 N*N* 的序列 a*a*。第一行输出每个数字其**左边**第一个比其**大**的数字,不存在则输出 `-1`。第二行输出每个数字其**右边**第一个比其**大**的数字,不存在则输出 `-1`。第三行输出每个数字其**左边**第一个比其**小**的数字,不存在则输出 `-1`。第四行输出每个数字其**右边**第一个比其**小**的数字,不存在则输出 `-1`。

2025-03-24 22:11:16 382

原创 Java「Deque」 方法详解:从入门到实战

Deque是的缩写,意为双端队列。它允许在队列的头部和尾部执行插入、删除和检查操作。Deque接口定义了一系列方法,使其既可以用作栈(LIFO,后进先出),也可以用作队列(FIFO,先进先出),甚至是更复杂的双端队列。Java 中DequeArrayDeque:基于数组的双端队列,性能优异,推荐使用。LinkedList:基于双向链表的双端队列,适合特定场景。接下来,我们将详细解析Deque的各种方法,并通过代码示例展示其用法。通过对Deque。

2025-03-24 22:07:16 2621

原创 JAVA 之「优先队列」:大顶堆与小顶堆的实现与应用

优先队列是一种特殊的队列,元素出队时不是按照加入顺序,而是根据优先级排序。Java 的是一个无界队列,内部基于堆(Heap)实现。小顶堆:默认实现,适合找最小值。大顶堆:通过比较器实现,适合找最大值。应用广泛:Top K、任务调度、实时排序等。是 Java 开发者必备的工具,掌握它的用法能极大提升代码效率。希望这篇博客能帮你在面试或项目中游刃有余!

2025-03-22 21:15:53 1533

原创 Java 之「单调栈」:从入门到实战

单调栈是一种特殊的栈结构,其核心在于保持栈内元素的单调性,即从栈底到栈顶元素要么单调递增,要么单调递减。

2025-03-22 21:14:39 1268

原创 广度优先搜索(BFS)完全解析:从原理到 Java 实战

BFS 是一种搜索算法,它从一个起始节点(根节点)开始,优先访问距离该节点最近的节点,然后再逐步向外扩展。

2025-03-21 21:31:55 1123

原创 深度优先搜索(DFS)完全解析:从原理到 Java 实战

深度优先搜索(DFS)是一种用于遍历或搜索树或图的算法。它的核心思想是:从一个起始节点开始,沿着一条路径尽可能深入地探索,直到无法继续前进时,再回溯到上一个分叉点,尝试其他路径。

2025-03-21 21:30:43 1375

原创 深入理解【二分法】:从基础概念到实际应用

在 Java 中,二分法(Binary Search)是一种高效的查找算法,通常用于在有序数据集(如数组或列表)中快速定位目标元素。它的核心思想是将搜索范围不断缩小一半,从而达到 O(log n) 的时间复杂度。

2025-03-19 19:27:53 1501

原创 深入理解【双指针】:从基础概念到实际例题

在 Java 中,双指针(Two Pointers)是一种常见的算法技巧,通常用于解决数组、链表或字符串相关的问题。

2025-03-19 16:02:45 1005

原创 基于Linux—Hadoop大数据集群搭建(100%成功版!!!)

Hadoop大数据集群搭建(100成功!!!)

2025-03-18 18:52:40 768

原创 深入理解【枚举】:从基础概念到实际例题

Java 中的枚举

2025-03-17 17:02:59 580

原创 深入理解 【字符串】(100%理解!!!)

在 Java 中,String 是一个类,而不是基本数据类型。它用于表示文本,是 java.lang 包中的一部分,因此无需显式导入即可使用。字符串本质上是一个字符数组(char[]),但它被封装成了一个不可变的对象。

2025-03-17 17:01:20 817

原创 leecode真题:常用枚举技巧

判断这个元素是否出现过,判断这个元素在集合是否出现过的时候,我们首先应该想到的是我们是否可以用到哈希,用到哈希的什么结构?一个是下标 一个是值 当需要这两个来实现一些条件时,就可以用hashmap 哈希索引。如此题,哈希索引优势就是在于边遍历边查找目标,一步到位,当遍历完成时,查找也结束。暴力固然好,但是时间复杂度不是很理想,有些题会做不出来,纬度低。今天更新的是hashmap的各个方法。找对map的key value。

2025-03-15 22:58:07 174

原创 java数组、字符串详解

​ 2.1 for循环打印i<a.length;

2025-03-15 22:57:23 167

原创 JAVA容器篇:「Map」详解(100%理解!!!)

在Java当中,有一个类专门用来存放其它类的对象,这个类就叫做容器,它就是将若干性质相同或相近的类对象组合在一起而形成的一个整体。如图一所示。

2025-03-15 22:46:18 1722 1

原创 蓝桥杯真题:【15.小蓝的图书馆】(详解讲解版!!!)

对每一个 find操作,你需要输出这个作者在小蓝的图书馆有多少本书,注意是书的数量,不是不同书的数量,同时不同作者可能出现同名的书。小蓝是一个热爱阅读的年轻人,他有一个小型图书馆。为了能够管理他的书籍库存,他需要一个程序来记录图书的信息并执行两种操作:添加图书。,author,表示添加的图书图书名和作者;笔者在完成时,遇到了如下问题,以此记录下来。行,给出操作及后面的参数,如题所述。循环 num 次,每次处理一个操作。,你需要输出小蓝的图书馆里这个。初始小蓝没有书,给出 n。给出的字符串长度 len。

2025-03-15 22:40:59 711

原创 蓝桥杯真题:A%B【算法赛】(详细讲解版!!!包会!!!)

是唯一的非负整数,满足 0≤r<∣B∣0≤。对于每个测试用例,输入一行包含两个整数 A。对于每个测试用例,输出一个整数,表示 A。1010 除以 33 的余数为 11。tips:java中无需引包,使用。≤103),表示测试用例的数量。的余数” 是指存在整数 q。第一行包含一个整数 T。=0),以空格分隔。即可实现绝对值运算。

2025-03-14 23:07:24 781

原创 解决git本地账号推送是403报错(100%有效!!!!)

另一个账号由于找回不到密码,于是重新创建了一个账号,实现两个账号的丝滑转换,便当时的遇到的问题和解决办法记录下来,希望能对读者有些帮助。完成绑定设置后,发现依旧出现**”Access denied“**检查本地绑定的用户名邮箱是否与使用账号一致。在网上找了一圈,定位电脑凭证问题。输入正确后,重试上传,成功!2.右上方可以搜索gitee,小记:由于自己同时拥有。

2025-03-12 21:51:08 1281

原创 逆波兰式求值

根据 逆波兰表示法,求表达式的值。有效的运算符包括 + , - , * , /。每个运算对象可以是整数,也可以是另一个逆波兰表达式。说明:整数除法只保留整数部分。给定逆波兰表达式总是有效的。换句话说,表达式总会得出有效数值且不存在除数为 0 的情况。示例 3:输入: [“10”, “6”, “9”, “3”, “+”, “-11”, " * ", “/”, " * ", “17”, “+”, “5”, “+”]输出: 22逆波兰表达式:是一种后缀表达式,所谓后缀就是指运算符写在后面。

2024-11-26 21:24:39 779

原创 浅析java中deque与queue的区别

Deque也是一个接口,它扩展了Queue接口,并增加了在队列两端进行插入和删除操作的方法。LinkedList同样实现了Deque接口。在Java中,Queue是一个接口,它定义了队列的基本操作。LinkedList是Queue的一个常用实现类。Queue(队列)和Deque(双端队列)在编程中的使用方法可以通过具体的代码示例来展示。以下是基于Java语言的示例,展示了如何使用Queue和Deque进行基本操作。

2024-11-25 20:05:21 589

原创 有效的括号

非常适合做对称匹配类的题目。但大部分人都一拿到题目就直接开始写,想到哪写哪,没有一个清晰的思路。给定一个只包括 ‘(’,‘)’,‘{’,‘}’,‘[’,‘]’ 的字符串,判断字符串是否有效。我们的代码只要覆盖了这三种不匹配的情况,就不会出问题,可以看出 动手之前分析好题目的重要性。​ **1.**输入的个数为偶数,若为奇数,直接判断为不符合。我们将此题思路总结好后,归纳成代码如下。​ 此段代码即是判断当右括号多了时,即如下图情况。若要判断是否为有效的括号,则需要满足以下条件。

2024-11-24 20:17:13 519

空空如也

空空如也

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

TA关注的人

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