自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

梦是现实的延续,现实是梦的结束。

主要专栏《C语言》《数据结构》《分享》,后续会持续更新,感谢大家的支持啦

  • 博客(27)
  • 收藏
  • 关注

原创 牛客小白月赛126

这篇文章是牛客小白月赛126的题目解析,围绕多道“小红”主题题目展开,涵盖A“小红打舞萌”、B“小红写谱”、C“小红出勤”、D“小红越级(easy)”、G“小红越级(hard)”、E“小红做梦”、F“小红开机厅”等题型。每道题的解析均按“题目-思路-代码”的结构呈现:先展示题目内容,再讲解解题思路,最后附上实现代码,为用户提供了从题目理解到代码落地的完整指导。

2026-01-01 18:24:21 833 69

原创 C++ string 类详解:概念、常用操作与实践(算法竞赛类)

这篇是 C++ string 实用指南:需含头文件<string>,支持多方式创建字符串;输入分cin(常规)与getline(带空格输入,含默认 / 自定义结束标志)。 size()取长度,迭代器begin()/end()实现遍历、改字符;操作含push_back尾插、+=拼接、insert指定插入、pop_back尾删;find()多类型查找、substr()截取(二者常配合)。 它支持关系运算,还可通过stoi/stod转数值、to_string转字符串,实现双向类型转换。

2026-01-01 18:17:03 1339 56

原创 星轨初途创作纪念日:这程文字星路,刚走满 128 个明亮日子

《星轨初途创作纪念日:这程文字星路,刚走满128个明亮日子》是我的创作纪念文。起初我将创作当作学习笔记,意外结缘志趣相投的朋友后,逐渐爱上这段分享时光。至今我写下24篇文章,收获超2.6万访问量与百余粉丝,也结识了同好博主与技术大佬,常交流学习、互促成长。如今创作已成日常,是我巩固知识的独特方式;期间既产出了心仪的算法文章,解题时的思维突破也让我欣喜。文末还分享了我的短期学习计划与后端开发的长期目标,盼与大家继续在文字星路上同行。

2025-12-26 16:43:40 556 11

原创 郑州轻工业大学2025天梯赛解题

本文是郑州轻工业大学2025天梯赛的解题总结,以“三阶段”梳理题目与对应解法:第一阶段聚焦基础题,涉及比较、枚举等思路,如“奇变偶不变”覆盖暴力枚举与前缀和两种方法;第二阶段进阶题则包含二次函数、差分+前缀和等技巧,像“熊孩子开关灯”对比了暴力与优化解法;第三阶段聚焦双指针、数位独立、链表模拟等方法,例如“信号基站”题从暴力枚举优化为数位独立思路,“链表奇偶拆分”通过模拟实现节点拆分。文章核心是展示从基础到进阶的解题逻辑,强调针对不同题目从暴力思路转向针对性算法优化,提升解题效率。

2025-12-26 15:25:46 901 6

原创 C++的条件判断与循环及数组(算法竞赛类)

本文是算法竞赛向 C++ 教程,聚焦条件判断、循环及数组相关内容。数组部分:讲解 auto 关键字,解析范围 for 的功能、语法,明确其适配静态数组、STL 容器的场景与动态数组等受限场景,附带 C++11 编译器配置;介绍 memset(数组内容设置)、memcpy(数组拷贝)的功能、头文件及实现。字符数组部分:详解带空格字符串读取法(gets/fgets、改 scanf 格式、getchar 逐读),讲解 strcpy、strcat 的使用,对比其与 memcpy 的差异,最后补充函数头文件说明,助力

2025-12-01 19:28:22 1629 47

原创 C++的输入输出(上)(算法竞赛类)

本文聚焦算法竞赛场景,讲解C++输入输出相关知识,内容涵盖:先介绍`getchar`与`putchar`的功能、头文件、返回值等细节及二者结合使用的方式;接着提及`scanf`、`printf`及占位符的相关内容;随后讲解`cin`和`cout`的基础用法、连续输入输出操作,并分析其优劣势;还补充了`cout`的格式输出技巧(含控制宽度、数值格式、整数格式、对齐方式等),帮助读者掌握算法竞赛中C++输入输出的核心用法。

2025-11-29 20:28:58 1633 57

原创 C++入门(算法竞赛类)

这是一篇C++入门指南类文章,核心内容围绕C++基础学习展开:首先介绍工具安装的相关内容,随后聚焦“第一个C++程序”,涵盖基础程序框架、头文件的相关知识、cin与cout的入门(含核心流对象、关键操作符、C++输入输出的优势),以及名字空间的核心作用、std名字空间的概念与两种使用方式;后续还将讲解数据类型、变量和常量、算术操作等内容,最后以结束语收尾,整体是面向C++初学者的基础入门内容。

2025-11-29 12:42:11 1269 53

原创 数据结构排序算法详解(5)——非比较函数:计数排序(鸽巢原理)及排序算法复杂度和稳定性分析

本文是初阶数据结构与算法专栏内容,聚焦计数排序及排序算法分析。文中先介绍非比较排序中的计数排序:讲解其概念、算法步骤,给出代码实现,分析其时间与空间复杂度,总结优劣势并做排序对比。随后解析排序算法的复杂度与稳定性:阐释算法稳定性核心概念,拆解各类排序算法的空间复杂度与稳定性,辅以图表直观呈现。文末含补充内容与结束语,本专栏至此完结,后续将更新加餐内容,下一篇将开启C++学习。

2025-11-27 13:24:32 1281 17

原创 数据结构排序算法详解(4)——归并排序(附动图)

本文围绕归并排序展开讲解,开篇介绍其核心思想与步骤(搭配动图辅助理解)。随后阐述递归实现归并排序的代码及核心内容分析;重点讲解非递归版本,说明其实现思路,解析关键的gap迭代与分组逻辑,以及“分组→合并→覆盖”的执行闭环,并附代码实现。文章还说明归并排序的时间复杂度,阐述其特性,将其与四大排序做对比,最后提供总代码。全文清晰呈现归并排序的两种实现方式、核心细节与排序对比,助力读者全面掌握归并排序。

2025-11-26 16:19:38 934 42

原创 数据结构排序算法详解(3)——交换排序(附动图)

本文围绕交换排序展开讲解,先介绍冒泡排序的概念、实现方式、时间复杂度及特性。核心聚焦快速排序:涵盖其由来与思想,Hoare原版递归实现、优化策略(三数取中、小区间优化),以及Hoare前后指针版、挖坑法快速排序,还涉及三类快排的封装与时间复杂度分析。接着补充快速排序的非递归实现,讲解用栈、队列实现快排的方式及对应时间复杂度。之后对比插入排序、选择排序与交换排序的特点,最后提供栈、队列的实现代码及排序总代码,以结束语作结。

2025-11-26 08:39:35 855 24

原创 数据结构排序算法详解(2)——选择排序(附动图)

本文聚焦选择排序体系展开解析,涵盖直接选择排序、堆排序,及与插入排序的对比。首先介绍直接选择排序的概念与实现,说明其时间复杂度为O(n²),并梳理其核心特性;继而讲解堆排序的概念及基于堆结构的实现逻辑,指出其时间复杂度稳定为O(nlogn)、空间复杂度O(1),还提及可用于Top-K问题(效率达O(n+klogn)),同时总结其特性。文章还对比了插入排序与选择排序的差异,附总代码示例辅助实操理解。全文以清晰的层级,为选择排序的学习、应用提供了实用指引。

2025-11-25 12:12:25 1214 29

原创 数据结构排序算法详解(1)——介绍及插入排序(附动图)

本文聚焦插入类排序算法,先介绍排序的基础概念及在数据处理、查找等场景的应用价值。解析直接插入排序:通过逐个插入前序有序序列实现排序,时间复杂度最好O(n)、最坏O(n²),为稳定排序,适用于小规模或近有序数据。继而阐述希尔排序(直接插入的优化):以“分组预排序+逐步缩小组距”让数据先“基本有序”,复杂度依间隔序列(如Hibbard序列为O(n^1.5)),虽不稳定但大幅提升效率。最后对比两者在效率、适用场景、稳定性的差异,为插入类排序的场景选择提供参考,明确其在基础算法体系中的实用价值。

2025-11-25 12:08:59 1087 33

原创 数据结构二叉树应用实战:多场景练习题强化巩固

本文聚焦二叉树应用实战,通过多场景练习题构建“理论+编码”的巩固体系:- **选择题模块**:涵盖二叉树性质(节点数、高度等)和链式结构遍历两类题目,夯实理论基础。- **OJ练习模块**:精选7类经典题型,包括单值二叉树、相同树、对称树、三种遍历及子树识别等,覆盖树的特性判断、遍历实现、子树分析等核心场景,提升实战编码能力。整体形成从理论理解到代码落地的完整学习闭环,助力深化二叉树应用认知与实践能力。

2025-11-22 22:15:29 1026 23

原创 数据结构二叉树之链式结构(3)(下)

本文围绕二叉树的实现与操作展开,首先详细阐述二叉树链式结构的多种操作实现,包括统计二叉树结点个数(涵盖局部变量、全局变量、结构体加变量、添加size变量及最优递归实现等方式)、叶子结点个数、第K层节点个数、二叉树高度、查找值为x的结点、二叉树的销毁及总代码;其次讲解二叉树层序遍历的实现;接着深入分析深度优先遍历(DFS)和广度优先遍历(BFS)的核心概念、工作原理、实现方式及关键区别;然后说明判断是否为完全二叉树的方法;最后提供包含队列(Queue.h、Queue.c)和二叉树(Tree.h、Tree.c、

2025-11-22 12:36:57 1081 41

原创 数据结构二叉树之链式结构(3)(上)

这篇文章围绕二叉树的核心操作展开,**前言**引出主题后,首先讲解**二叉树链式结构的创建**,涵盖二叉树结构的创建方法及手动创建链式二叉树的具体操作;接着深入阐述**二叉树的遍历**,包括遍历规则,以及前序遍历(含思路和代码实现)、中序遍历、后序遍历的详细内容;最后以**结束语**总结全文,帮助读者系统掌握二叉树的链式结构构建与遍历原理,是一份聚焦二叉树基础操作的技术类内容。

2025-11-19 16:19:43 1391 39

原创 函数的栈帧的创建和销毁(超详细版本图文丰富)

函数的栈帧的创建和销毁(超详细版本图文丰富),这篇文章以超详细的图文形式,深入程序运行的“幕后”解析**函数栈帧的创建与销毁**。内容先阐述理解函数栈帧的必要性,介绍栈的概念、数据结构栈与程序运行栈的对比,以及相关寄存器和汇编指令;再分步拆解函数栈帧创建(如`push ebp`、`mov ebp esp`等操作)与销毁的具体过程;最后围绕局部变量创建与随机值、参数传递、形实参关系、函数返回等问题进行回顾总结,帮助读者透彻掌握函数调用的底层逻辑。

2025-11-19 07:34:24 1240 43

原创 《数据结构二叉树之堆 —— 优先队列与排序的高效实现(2)(下)》

本篇主要比较向下调整法和向上调整法的时间复杂度和堆排序的时间复杂度以及TOP-K问题

2025-11-16 02:45:00 2015 43

原创 文件操作入门(下)—— 随机读写、结尾判断、缓冲区及实战题目

本文主要紧接着上一篇讲解,讲解文件的随机读写和文件读取结束的判断,已及文件缓冲区

2025-11-15 17:04:11 1003 25

原创 文件操作入门(上)—— 文件类型及顺序读写基础(含打开关闭)

本文聚焦文件操作核心知识,助读者快速掌握:文件是数据持久化载体,流是数据传输抽象,含`stdin`等3个标准流。核心组件包括`FILE*`文件指针、`fopen`(指定路径与打开方式)和`fclose`(释放资源),路径分绝对与相对两类。重点讲解8个顺序读写函数(字符级`fgetc/fputc`、文本行级`fgets/fputs`、格式化`fscanf/fprintf`、二进制`fread/fwrite`)及代码效果。还明确格式化与不格式化数据的结构、可读性、用途差异,对比`scanf/fscanf/ssc

2025-11-15 00:00:00 797 23

原创 《数据结构二叉树之堆 —— 优先队列与排序的高效实现(2)》

堆的实现和排序

2025-11-14 00:00:00 2500 25

原创 数据结构之初识二叉树(1)——核心概念入门

(1)若规定根结点的层数为1,则一棵非空二叉树的第 i 层上最多有2i-1个结点(2)若规定根结点的层数为1,则深度为 h 的二叉树的最大结点数是2h(3)对任何一棵二叉树, 如果度为0其叶结点个数为n0 , 度为2的分支结点个数为n2 ,则有 n0=n2 +1第3条如图🟧 (n2=1)/ \/ \ / \

2025-11-13 09:00:00 878 19

原创 数据结构核心:栈 / 队列互转 + 循环队列,三大必刷题型深度拆解

数据结构核心:栈 / 队列互转 + 循环队列,三大必刷题型深度拆解

2025-11-13 00:00:00 1689 26

原创 栈与队列核心篇(下):从基础到进阶,玩转队列设计

主要讲了队列的介绍和实现

2025-11-12 12:00:00 844 15

原创 栈与队列核心篇(上):从原理到代码,吃透栈结构

主要讲了栈的概念和实现已及相关算法题,希望对大家有所帮助

2025-11-12 00:15:00 962 26

原创 算法的时间复杂度和空间复杂度

主要讲了复杂度分析和解决

2025-11-04 18:35:43 1185 21

原创 数据结构开端

主要作为数据结构开端的介绍

2025-11-04 00:30:00 454 12

原创 我的第一篇博客,欢迎大家交流

在编程方面有了一定的能力后,我会不断讨论并分析代码,并在CSDN加强自己的了解,积累经验。C语言是我第一个接触到的编程语言,初步学习,就感受到它的魅力。在时间的花费上,计划每周花费18个小时左右,大部分用于C语言的学习与实践,愿对编程的每一次了解,都将成为我前进的动力和能力。对此没有很多了解,但我相信在我不断了解和丰富自身后,可以进入一些良好发展空间的公司,并不断学习,推动自己的职业发展,加油。我是一名大一软件工程专业的学生,初步接触编程,了解并不多,但我相信我能在编程世界找到属于自己的方向,并不断前行。

2025-08-16 20:31:35 639 16

空空如也

空空如也

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

TA关注的人

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