- 博客(10)
- 收藏
- 关注
原创 [LeetCode]283.移动0(双指针)
本文介绍了移动零问题的解决方案。通过双指针法,一个指针(cur)遍历数组寻找非零元素,另一个指针(dest)分隔已处理的非零元素和零元素。当cur遇到非零元素时,与dest+1位置交换,保持非零元素相对顺序不变。算法时间复杂度为O(n),只需一次遍历即可完成所有零元素的移动操作。Java代码实现简洁高效,通过交换操作实现原地修改数组。
2026-04-03 07:59:36
10
原创 牛客题集1---BC153 数字统计, NC313 两个数组的交集, AB5 点击消除
摘要: 本文解析了牛客网三道编程题: BC153 数字统计:统计给定区间内数字2的出现次数,通过逐位取模和除法实现。 NC313 两个数组的交集:利用哈希表(数组模拟)快速查找交集元素并去重。 AB5 点击消除:用栈(StringBuilder模拟)处理相邻重复字符的消除,最终输出剩余字符。 代码均给出Java实现,并标注关键注意事项,如临时变量保护原数据、哈希表去重逻辑及栈的优化模拟方法。
2026-04-01 15:37:04
179
原创 [LeetCode]3.无重复字符的最长字串(滑动窗口)
本文介绍使用滑动窗口算法解决"无重复字符的最长子串"问题。通过维护左右指针构建窗口,利用哈希表记录字符出现次数。当发现重复字符时,移动左指针缩小窗口,确保窗口内字符唯一。时间复杂度为O(n),空间优化使用128位数组替代哈希表。算法高效地找到最长无重复子串长度。
2026-04-01 14:34:06
24
原创 [Java数据结构] 1.集合框架和顺序表ArrayList
本文介绍了Java集合框架中的List接口及其实现类ArrayList。主要内容包括:1)集合框架概述,展示常用接口和类;2)List接口的定义和常用方法,如add、contains等;3)ArrayList的特点和使用,包括动态扩容、线程不安全等特性;4)通过简易代码实现ArrayList的核心功能,如扩容机制和插入操作。文章以应用为导向,帮助初学者快速理解数据结构的基本概念和使用方法,适合入门学习和复习参考。
2026-03-18 20:29:05
594
原创 C语言学习重点概要(4)——数组、函数、生成随机数
本文介绍了C语言中数组、函数和随机数生成的基础知识。数组部分讲解了一维、二维数组的创建、初始化、下标访问及内存特性,并介绍了C99的变长数组。函数部分涵盖库函数、自定义函数的语法规则、参数传递、作用域及static/extern关键字的使用。随机数生成部分详细说明了如何利用rand()、srand()和time()函数组合实现真正的随机数生成,包括时间戳作为种子的使用方法。这些知识点为后续开发扫雷等游戏程序打下了必要的技术基础。
2025-10-27 19:35:49
1008
原创 C语言学习重点概要(3)——分支和循环
本文介绍了C语言中的选择结构和循环结构,包括关系操作符(<,>,<=,>=,==,!=)、逻辑操作符(&&,||,!)和条件操作符(exp1?exp2:exp3)的使用。重点讲解了if语句的语法和嵌套用法、switch语句的执行逻辑及break关键字的用法。在循环结构方面,详细说明了while、for和do while三种循环的语法特点及其适用场景。此外,还介绍了continue和break的区别,以及goto语句的优缺点和使用建议。掌握这些基础语法结构是编写结构化程
2025-10-19 16:09:26
1285
原创 C语言学习重点概要(2)——数据,变量,操作符,printf和scanf函数
本文介绍了C语言编程基础中的数据类型、变量、操作符以及输入输出函数printf和scanf的使用。主要内容包括:1. C语言内置数据类型(字符型、整型、浮点型、布尔型)及其分类;2. 变量的创建、初始化、分类(全局/局部)和存储位置;3. sizeof操作符的用法和不同数据类型的长度;4. 常用操作符(算术、赋值、单目等)的功能和使用注意事项;5. printf函数的格式化输出和占位符使用;6. scanf函数的输入原理、占位符、返回值及常见问题处理。文章旨在帮助初学者掌握C语言编程的基本概念和语法规则。
2025-10-12 23:24:30
1339
3
原创 C语言学习重点概要(1)—— 一些常见的概念
本文介绍了C语言的基础知识,包括其编译型特性、三种程序结构、历史背景和编译过程。重点讲解了初学时的注意事项(如符号输入法、分号使用等)、main函数作用、32个关键字使用规则、ASCII编码体系、字符串与转义字符特性、五种语句类型以及注释的两种风格(C风格/**/和C++风格//)。文章特别强调注释的重要性,并指出注释在编译时会被替换为空格。内容涵盖C语言核心概念,适合新手快速掌握基础要点。
2025-10-11 17:49:47
1018
原创 关于如何取消VS2022的AI补写代码
文章摘要:作者建议编程新手关闭VS2022的AI自动补写功能,认为过度补写会干扰思路并影响独立编程能力的培养。文中提供了关闭AI补写的具体步骤(通过GitHub Copilot设置),并分享了自己因该问题困扰两周后偶然找到解决方案的经历。作者还提到近期学习收获颇丰,计划更新博客内容以实现写作目标。(149字)
2025-10-10 20:58:08
578
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅