自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【刷题】力扣239 滑动窗口最大值

双端队列解决滑动窗口最大值问题

2026-05-04 21:56:17 25

原创 【刷题】力扣24 两两交换链表节点

链表

2026-05-03 22:10:39 27

原创 【刷题】力扣739.每日温度

单调栈

2026-05-03 21:49:43 29

原创 【刷题】信息学奥赛一本通1250:The Castle(一个狠题)

①位运算来判断墙,②方向数组的表示(其实也是服务位运算),③记录连通块数和最大连通块数,④bfs基础写法

2026-03-30 21:40:14 64

原创 【理清思路】连通块问题

①图的连通块问题;②二维数组连通块问题1---一本通1329细胞---计算cnt;③二维数组连通块问题2---一本通1216红与黑tmp---计算tmp以及多测问题

2026-03-29 13:18:54 212

原创 【刷题】力扣56. 合并区间

①vec.back() 和 vec.end() 区别;②sort函数里用lambda/写比较函数cmp的区别;③本题正解

2026-03-28 10:40:49 208

原创 【刷题】洛谷P5318 【深基18.例3】查找文献(搜索的基础知识)

本文介绍了图的两种搜索算法(DFS和BFS)的实现方法,重点讨论了如何保证字典序最小的搜索顺序。关键点在于对邻接表中每个节点的邻接点进行排序,从而确保从小到大的遍历顺序。文章详细展示了使用邻接矩阵和邻接表实现DFS/BFS的代码模板,并通过P5318例题说明具体应用。时间复杂度分析表明,虽然需要对邻接表进行排序,但总体复杂度为O(mlogm)。文中还特别强调了在BFS实现中需要在入队时立即标记节点的重要性。

2026-03-27 17:09:01 339

原创 【刷题】信息学奥赛一本通1224:最大子矩阵 之 两种理解方式

这个题目说了0<N<=100,所以就算四层循环也才2^8,不超过2^9,所以不会越界。但是像洛谷P1115最大字段和1≤n≤2×10^5,两层循环就爆了,所以这个题用暴力的话只能拿一部分分,要用动态规划来解决(二十六)早上刷题突然刷的脑子有点乱了,这个二维矩阵还挺有意思,有两种理解方式,日常用格子视角多一点,写着写着突然把数组下标理解成边界线下标了,于是混写起来的话总是答案错误,所以写一下这篇用以警醒。想象在格子之间画线,线0在格子1之前,线1在格子1之后。表示第 i 行第 j 列的那个。

2026-03-20 10:16:18 72

原创 【刷题】信息学奥赛一本通1072:鸡尾酒疗法

摘要:本文讨论了临床实验数据比较中避免浮点数精度误差的方法。通过将疗效比较公式(heal[0]/num[0]与heal[i]/num[i]的差值)转换为整数运算,将两边同乘100和分母num[0]num[i],得到100heal[0]num[i]-100heal[i]num[0] > 5num[0]*num[i]的整数判断条件。该方法有效消除了小数运算带来的精度问题,并强调了题目要求严格大于而非大于等于的判断条件。最终给出了使用long long数组存储数据、通过整数比较实现的C++代码解决方案。

2026-03-18 15:26:52 120

原创 【理清思路】关于计算长度size/length sizeof() strlen

本文总结了C/C++中常用的字符串长度计算方法:1. size()是STL方法,返回string对象有效字符数;length()是没有STL时用的;2. sizeof计算变量占用的内存字节数,常用于数组初始化;3. strlen是C函数,计算字符串有效字符数(不含'\0')。特别指出:sizeof包含结束符,strlen不包含;字符数组初始化时常用sizeof确定大小,但获取字符串实际长度需用strlen。示例说明char p="abcdef"时,sizeof返回7,strlen返回6。

2026-02-01 12:06:41 203

原创 【理清思路】高精度算法

高精度算法用于处理大整数运算问题,主要包括加减乘除四种基本运算。通过字符串输入数字,倒序存储到数组中,逐位处理并考虑进位/借位。加法需处理最高位进位,减法需考虑负数情况,乘法采用双重循环计算各位乘积,除法通过模拟竖式计算实现。关键点包括:ASCII码转换、倒序存储、进位处理、前导零去除等。这些方法解决了基本数据类型无法存储超大整数的问题,适用于需要处理数百位甚至更长数字的场景。

2026-01-28 12:14:27 635

原创 【理清思路】结构体字节对齐

结构体字节对齐规则总结:1)以最大成员类型为对齐基准;2)按定义顺序分配内存;3)地址需满足类型整数倍。例如,含int和char的结构体可能占8或12字节,取决于成员顺序。特殊情况:1)使用#pragma pack可强制指定对齐值;2)位域结构按位分配,同类型成员可合并;3)联合体(union)共享内存,大小等于最大成员。合理排列成员可优化内存占用,如将小类型集中定义可减少填充字节。

2025-12-06 16:23:03 755

原创 【python】机器学习PyTorch with CUDA (GPU版本) 相比普通CPU版本有感

摘要:本文对比了PyTorch的CPU与GPU版本差异,重点阐述了GPU加速的优势。实验表明,GPU版本能将训练速度提升10-100倍,处理更大规模数据,并支持更复杂模型。文章通过代码示例展示了GPU计算的时间优势,指出GPU适合机器学习任务而CPU更适合基础学习。同时解释了PyTorch GPU版本的安装原理,强调其作为连接框架与GPU硬件的"翻译官"作用。最后提到可通过conda环境灵活切换不同版本,满足不同计算需求。

2025-11-17 13:02:59 1074

原创 【理清思路】冒泡排序

i++)//比如j=10-1=9,则有9个数需要排序,这样更直观。j++)//比如第2趟排完后,还有n-2个数要排。j--)//n趟,j倒着数便于内层循环索引使用。i++)//只排k次,若全排,则i<=n。// 时间复杂度:最好O(n)、最坏O(n^2)、平均O(n^2)// 冒泡排序:从头到尾,每次比较相邻两个元素,如果满足条件则交换。// n个元素冒泡排序,最坏情况下需要进行n-1次排序。// 从小到大排序 n = 6。// 空间复杂度:O(1)

2025-11-15 16:41:45 572

原创 【理清思路】指针的运算

都属于第二类,先算p++,此时p++这个表达式指向nums2,但是p指向nums3;此时进行*p,即6;最后对6先++后输出,得7。// 数组特点:支持随机访问(访问效率高)、插入删除效率慢,内存连续。后++,所以先*p,取出来9,然后p++取出*p,然后+1,输出。// 数组名字:数组首元素的地址。指向原来的元素(用于解引用和递增)变量本身已经+1,现在指向。p暂时变成nums[3]作用于当前已经改变后的。*p为1,先++后输出。运算符作用于 p++得出结果是0,而不是1。取出来5,后让5++

2025-11-09 20:25:14 268

空空如也

空空如也

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

TA关注的人

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