自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 LeetCode 热题 100(滑动数组)

本文介绍了两种解决“无重复字符的最长子串”问题的方法。第一种是滑动窗口法,通过维护一个窗口并使用数组记录字符是否重复,动态调整窗口边界以找到最长子串。第二种方法结合哈希表和滑动窗口,利用哈希表记录字符索引,快速判断重复并调整窗口。此外,还介绍了“找到字符串中所有字母异位词”的解题思路,通过初始化字符频率计数器和滑动窗口,比较字符频率来找到所有异位词的起始索引。这些方法通过高效的算法设计,能够有效解决字符串处理中的常见问题。

2025-05-19 22:20:14 351

原创 LeetCode 热题 100(双指针)

使用两个指针,一个指针用于遍历数组,另一个指针用于记录非零元素应该放置的位置。遍历数组时,遇到非零元素就将其放到非零指针的位置,并将非零指针向后移动一位。移动较短的柱子有可能找到更高的柱子,从而增加容器的高度,进而可能增加面积。而移动较长的柱子则不可能增加容器的高度,因为容器的高度已经由较短的柱子限定了。计算当前两个指针所形成的容器的面积,高度由较短的那根柱子决定,宽度为两个指针之间的距离。移动指针:如果左边柱子的高度小于右边柱子的高度,则移动。如果和为零,记录结果,并移动指针跳过重复元素。

2025-05-11 10:58:20 348

原创 LeetCode 热题 100(哈希)

常见的方法是将单词中的字母排序后作为键。检查哈希表中是否包含这个补数,如果包含,说明找到了两个数,它们的和等于目标值,直接返回它们的索引。:在循环中先更新哈希表,再查找余数,这会导致如果余数是当前元素本身,就会返回同一个元素的索引两次。遍历数组中的每个元素,检查其是否是连续序列的起点(即当前元素的前一个元素不存在于哈希表中)。:遍历单词列表,对每个单词进行排序处理,得到其对应的键,然后将其添加到哈希表对应的列表中。如果是起点,就从当前元素开始,向后检查连续的元素,直到找不到为止,记录当前连续序列的长度。

2025-04-20 12:04:35 662

原创 C语言(内存分区详解、静态局部变量、静态全局变量)

char buf[10] = "abcdef" 我给他申请在栈区,那么整个数组元素都在栈区,我们进行下标访问访问的是栈区的内容 buf[2] 虽然是‘b’ 但这个是栈区的。:定义了一个指向常量的指针 p,p 可以改变,但 *p 不能被修改。*p++:可以,因为 *p 指向的是字符串字面量的当前字符,p 本身可以改变,但 *p 不能被修改。(*p)++:错误,因为 *p 指向的是字符串字面量,字符串字面量是只读的,不能被修改。buf:数组名,表示数组首元素的地址,是一个指针常量,不能被修改。

2025-01-17 15:03:07 760

原创 C++ (函数默认参数、函数重载、this指针、内存分区)

#留言。

2025-01-16 14:41:37 745

原创 C++ 引用(左值引用和右值引用)

# 也是回顾以前学习的知识,整理一下之前的笔记,用自己的理解说一说,希望方便大家理解和记忆 , 如果有错。(注意不要返回局部变量的引用了,局部变量在函数结束就没了 返回这个引用所指的对象已经不存在了(悬空引用),右值是一个表达式,它表示一个临时的值,通常用于初始化或赋值,但不能出现在赋值运算符的左边。:左值是一个表达式,它表示一个持久存储的位置(即内存地址),可以出现在赋值。右值通常是临时的,其生命周期通常到当前表达式结束。右值没有持久的存储位置。左值有持久的存储位置。左值可以被取地址(使用。

2025-01-13 20:13:56 384

原创 C语言(头文件,截断,短路,左移和右移、指针、伪随机)

指针变量所占空间大小只取决于当前编译环境,(Debug x64 64bit 8字节(指针变量大小)) (x86 32bit 4字节)都是编译环境。

2025-01-12 13:19:34 1079 2

空空如也

空空如也

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

TA关注的人

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