- 博客(67)
- 收藏
- 关注
原创 二、用户中心的开发
本文摘要: 文章介绍了用户管理系统的需求分析与设计方案。系统功能包括用户注册、登录、信息获取、退出登录及权限管理,其中管理员拥有用户增删查改权限。数据库采用MySQL设计,包含用户表和后期扩展的会员表、邀请表结构。交互流程详细展示了注册和登录的时序图,包括参数校验、密码加密、JWT生成等关键步骤。技术实现上引入MyBatis Flex代码生成器,提供自动生成实体类和控制器的工具类配置。整体方案采用分层架构设计,注重数据安全和可扩展性。
2026-03-12 07:44:02
344
原创 一、项目初始化
本文介绍了使用IDEA初始化Spring项目的步骤:1)新建项目并选择Spring依赖;2)检查项目能否正常运行;3)清理无用文件;4)配置Maven环境。还提供了常用依赖整合方案,包括Hutool工具库、Knife4j接口文档和AOP切面的配置方法,强调需从官方文档获取最新依赖信息。项目初始化完成后,建议添加@EnableAspectJAutoProxy注解以启用AOP功能。
2026-03-12 07:41:56
292
原创 LeetCode算法题解双指针之1089.复写零(Java版)
本文介绍了LeetCode"复写零"问题的解法。题目要求遍历数组,遇到0时复写两次,非0元素则只复写一次。解法采用双指针技术:首先用cur和dest指针确定复写后的数组边界,处理可能的越界情况后,再从后向前完成复写操作。算法时间复杂度为O(n),空间复杂度O(1)。代码实现中特别处理了数组末尾为0的边界情况,确保结果正确。
2026-02-26 15:40:48
57
原创 LeetCode算法题解双指针之283.移动零(Java版)
本文介绍了使用双指针算法解决"移动零"问题的方法。题目要求将数组中的零元素全部移动到末尾,同时保持非零元素的相对顺序不变。算法采用两个指针(cur和dest)将数组分为三部分:已处理的非零部分、已处理的零部分和未处理部分。通过遍历数组,当遇到非零元素时进行交换操作,确保非零元素前移而零元素后移。最终实现了原地操作且时间复杂度为O(n)的高效解决方案。代码展示了具体实现过程,包括指针移动和元素交换的逻辑。
2026-02-26 15:36:51
515
原创 牛客BM2 链表指定区间反转
本文介绍了链表指定区间反转问题的解法。通过引入虚拟头节点(dummy)统一处理边界情况,采用头插法实现区间反转。算法使用三个指针(pre、cur、temp),通过n-m次循环将区间内节点依次插入到pre之后,完成反转。整个过程只需遍历一次链表,空间复杂度为O(1)。代码实现简洁高效,适用于任意长度的反转区间。
2026-02-13 10:31:24
478
原创 牛客BM1 反转链表
本文介绍了反转单链表的算法实现。题目要求将给定链表原地反转,不能使用额外空间且只能遍历一次链表。采用三指针法(pre、cur、temp)逐步反转节点指向:先用temp保存当前节点的next,然后将cur.next指向pre,最后移动pre和cur指针。当cur为null时循环结束,此时pre指向新链表头节点。代码实现简洁高效,时间复杂度O(n),空间复杂度O(1)。边界情况(空链表或单节点链表)也能正确处理。
2026-02-13 10:29:43
549
原创 一、HTML 完全指南:从零开始构建网页
《HTML完全指南:从零开始构建网页》摘要 本文是一篇HTML入门指南,介绍了网页开发的基础语言HTML。文章首先概述HTML的基本概念和重要性,强调其作为网页开发核心技术的地位。然后详细讲解了HTML文件的基本结构,包括DOCTYPE声明、html、head、body等标签的层级关系和使用方法。接着重点介绍了常见HTML标签,如标题标签h1-h6、段落标签p、注释标签等,并提供了具体示例代码。文章还解释了DOM树的概念和作用,帮助读者理解网页结构。最后,介绍了快速生成HTML代码框架的技巧,适合零基础学习
2025-09-12 20:47:26
1448
原创 二、网页的“化妆师”:从零学习 CSS
CSS(层叠样式表)是一种用于美化HTML页面的语言,通过选择器和声明块来定义样式。基本语法包括选择器、属性和值,需遵循分号结束、冒号连接等规范。CSS有三种引入方式:行内样式(直接写在标签内)、内部样式表(写在<head>的<style>中)和外部样式表(通过<link>引入独立.css文件)。选择器包括通配符(*)、元素选择器(如p)、类选择器(.class)、ID选择器(#id)、后代选择器(div p)、子选择器(div>a)、并集选择器(div,h3)和伪
2025-09-12 20:46:46
951
原创 二、Java方法对应练习
本文展示了7个Java编程实例,涵盖基础算法和递归应用:1)判断闰年(能被4整除且不被100整除,或能被400整除);2)两数相加;3)递归求阶乘(n!=n*(n-1)!),基线条件为n=1;4)递归分解数字各位(如1234输出1 2 3 4);5)递归求1到n的和;6)递归计算数字各位和(如1729返回1+7+2+9=19);7)递归求斐波那契数列第n项(fib(n)=fib(n-1)+fib(n-2))。这些案例演示了递归的核心思想:将问题分解为更小的同类子问题,直到达到基线条件。
2025-08-14 20:37:21
263
原创 五、Java方法详解:深入理解方法
摘要 本文介绍了Java中方法(Method)的概念及其优势。通过计算不同形状面积的示例,展示了使用方法如何避免代码重复、提高可读性和复用性。文章详细讲解了方法的定义语法,包括访问修饰符、返回值类型、参数列表等关键要素,并提供了多个方法定义示例。同时阐述了方法调用的执行过程和Java的值传递机制,特别强调了基本数据类型与引用数据类型在参数传递时的区别。理解方法的概念和使用对于编写高效、模块化的Java程序至关重要。
2025-08-14 12:04:59
1304
原创 一、程序控制相关练习
本文展示了14个Java基础编程示例,涵盖条件判断、循环结构和数学计算等基本语法。主要包括:奇偶判断(1)、正负零判断(2)、闰年判断(3)等条件语句;使用while循环实现1-100打印(4)、求和(5)、阶乘计算(6-7)及3的倍数查找(8-9);使用for循环实现相同功能(10-13);以及switch语句实现日期输出(14)。这些示例演示了Java中基本的输入输出、条件分支和循环控制结构,适合初学者学习基础语法和算法逻辑。
2025-08-13 17:06:38
221
原创 四、深入剖析Java程序逻辑控制:从字节码到性能优化
本文深入剖析Java程序逻辑控制结构,包括顺序结构、分支结构和循环结构的底层实现原理与最佳实践。顺序结构通过程序计数器实现线性执行;分支结构(if/switch)使用字节码跳转指令控制流程;循环结构(while/for)通过条件判断实现重复执行。文章特别强调常见编码陷阱(如分号错误、悬垂else问题)和性能优化技巧,并通过字节码分析揭示底层机制。还介绍了break和continue的流程控制作用,指出分支与循环结构的选择策略,为编写高效Java代码提供实践指导。
2025-08-13 15:52:35
1021
原创 三、Java运算符详解:从基础到进阶的技术指南
Java运算符是构建程序逻辑的核心工具,可分为算术、赋值、关系、逻辑、位运算等七大类。算术运算符需注意整数/浮点除法的区别以及自增/自减的前后置差异;赋值运算符存在隐式类型转换特性;关系运算符是条件判断的基础;逻辑运算符具有短路求值特性;位运算符可进行高效底层操作。此外,运算符的优先级和结合性决定了复杂表达式的计算顺序。掌握这些运算符的特性对编写正确高效的Java代码至关重要。
2025-08-11 17:18:25
985
原创 二、变量与数据类型:写代码前必须打通的「任督二脉」
本文介绍了编程基础中的变量与数据类型,重点讲解了字面常量、数据类型和变量的概念及应用。主要内容包括: 字面常量:程序中的固定值,如数字、字符、字符串等,直接使用无需声明,使代码更清晰易读。 数据类型:对数据的分类方式,决定了存储方式和操作规则。Java中的基本数据类型分为四类八种,包括整型、浮点型、字符型和布尔型,每种类型的内存占用和范围各不相同。 变量:存储数据的容器,分为整型变量(int、long、short、byte)、浮点型变量(double、float)等,通过代码示例展示了变量声明和使用方法。
2025-07-14 15:50:44
925
原创 一、初识Java:开启编程新世界的大门
Java作为一门跨平台、面向对象的高级编程语言,自1995年诞生以来广泛应用于企业级开发、移动应用和大数据等领域。文章介绍了Java的核心特性(面向对象、平台独立性、安全性等)、开发环境搭建方法,并详细讲解了Java程序的基本结构,包括main方法的使用、三种注释方式、标识符命名规则以及关键字等内容。这些基础知识为后续深入学习Java编程奠定了基础,展现了Java"一次编写,到处运行"的独特优势和在技术领域的重要地位。
2025-07-14 15:50:22
845
原创 C++命名空间:代码组织的艺术与冲突解决的利器
C++命名空间通过隔离标识符作用域有效解决命名冲突问题,是组织大规模代码的核心工具。标准库采用std命名空间避免用户冲突,开发者可通过namespace定义空间(支持嵌套与跨文件扩展),使用::限定符或using指令访问成员。进阶技巧包括匿名命名空间(文件级隔离)、别名简化、内联命名空间(版本控制)。最佳实践强调避免头文件全局导入、优先显式访问,模块化项目中推荐嵌套使用。命名空间显著提升代码可维护性,是C++工程化开发的必备技能。
2025-06-01 22:52:32
1051
原创 C++输入与输出技术详解
本文全面介绍C++中的输入输出技术,包括标准流对象(cin/cout/cerr/clog)的特性与用法、C风格函数(scanf/printf/fgets)的优缺点对比,以及输入输出性能优化策略(如禁用同步、解除绑定、缓冲区控制等)。通过代码示例说明不同类型I/O操作的应用场景,帮助开发者根据需求选择高效、安全的实现方式,并提升程序I/O性能。C++的流机制提供类型安全和灵活性,而C函数在格式化控制上更精细,合理结合两者可优化开发效率。
2025-06-01 22:52:00
919
原创 函数指针相关的两个有趣的代码分析
在C语言的编程世界里,函数指针一直是一个神秘而强大的存在。今天,让我们一起揭开两段代码的神秘面纱,深入理解它们背后的逻辑和应用场景。通过本篇博客的学习,我们深入理解了两段代码背后的逻辑和应用场景。函数指针是C语言中非常强大的工具,它能让我们的程序更加灵活和高效。希望读者能够通过不断地实践和思考,真正掌握函数指针的精髓。
2025-03-26 15:50:59
1063
C语言的扫雷小项目只用数组和函数
2025-03-20
c语言大一认识实习之学生信息管理系统
2024-04-27
通过C语言实现的扫雷游戏
2024-03-18
用C语言写的简单的猜数字游戏
2024-03-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
7