自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 数据结构每日一题day11(链表)★★★★★

题目描述:有一个带头结点的单链表L,请设计一个算法查找其第1个数据值为e的结点,若存在则返回指向该结点的指针,若不存在则返回 NULL。返回结果:若找到匹配的结点,立即返回指向该结点的指针;若遍历结束未找到,返回NULL。遍历链表:从头结点后的第一个结点开始依次向后遍历,比较每个结点的数据域是否等于e。输入检查:若链表为空(仅有头结点),直接返回NULL。时间复杂度:O(n)空间复杂度:O(1)

2025-04-03 21:46:30 408

原创 数据结构每日一题day10(链表)★★★★★

题目描述:有一个带头结点的单链表L,请设计一个算法查找其第i个结点位置,若存在则返回指向该给点的指针,若不存在则返回NULL。遍历链表:从头结点后的第一个结点开始,依次向后遍历,直到找到第i个结点或链表结束。返回结果:若找到第i个结点,返回指向该结点的指针;输入检查:若链表为空(仅有头结点)或i ≤ 0,直接返回NULL。时间复杂度:O(n)空间复杂度:O(1)

2025-04-02 11:27:47 273

原创 数据结构每日一题day9(顺序表)★★★★★

题目描述:将两个有序顺序表A和B合并为一个新的有序顺表返回 true,合并失败则返回 false。双指针遍历:使用两个指针分别遍历A和B,比较当前元素大小,将较小者插入C,直至其中一个表遍历完毕。输入检查:若A、B或C为空指针,或合并后总长度超过顺序表最大容量,返回false。时间复杂度:O(m+n),其中m、n为A、B的长度,需遍历所有元素。更新表长:设置C的length为合并后总长度,返回true。剩余元素处理:将未遍历完的表中剩余元素全部追加到C中。空间复杂度:O(1),仅需常数级辅助变量。

2025-04-01 20:03:02 187

原创 数据结构每日一题day8(顺序表)★★★★★

遍历顺序表(从i=1开始),若当前元素data[i]不等于data[k],则将其保留到k+1位置,并更新k。题目描述:从有序顺序表中删除所有其值重复的元素,使其中所有元素的值均不同。更新表长:遍历结束后,表长设为k+1,直接截断后续元素。输入检查:若顺序表为空或指针为空,返回false。复杂度分析:时间复杂度O(n)空间复杂度O(1)使用指针k标记保留元素的末尾,初始位置为0。

2025-04-01 19:51:21 347

原创 数据结构每日一题day7(顺序表)★★★★★

题目描述:从顺序表中删除其值在给定值s与t之间(包含s和 t,要求 s<t)的所有元素,若s或t不合理或顺序表为空,则返回 false,若执行成功则返回 true。双指针覆盖法:用 k 记录保留元素的索引,i 遍历原数组。若元素不在 [s, t] 内,将其保留到 k 位置,k 递增。输入检查:若顺序表为空、指针为空或 s >= t,直接返回 false。更新表长:遍历结束后,表长设为 k,实现原地删除。复杂度分析:时间复杂度O(n)空间复杂度O(1)

2025-03-30 17:49:18 482

原创 数据结构每日一题day6(顺序表)★★★★★

双指针覆盖法:使用两个指针(逻辑上的索引),一个遍历原数组(i),另一个记录保留元素的位置(k)。筛选保留元素:遍历时,若当前元素不等于x,将其复制到k位置,并递增k。题目描述:对长度为n的顺序表L,删除顺序表中所有值为x的数据元素。更新表长:遍历结束后,将顺序表长度设为k,实现原地删除所有x元素。复杂度分析:时间复杂度O(n)空间复杂度O(1)

2025-03-29 17:51:36 322

原创 数据结构每日一题day5(顺序表)★★★★★

题目描述:从顺序表L中删除最小值元素并由函数返回被删元素的值。(假设顺序表L有最小值且最小值唯一)合法性检查:若顺序表为空或指针为空,返回特定错误值(如-1,根据题目假设可省略)。保存并删除元素:将最小值元素保存后,将其后所有元素前移一位覆盖该位置。查找最小值位置:遍历顺序表,记录当前最小值及其下标。复杂度分析:时间复杂度O(n)空间复杂度O(1)更新表长:顺序表长度减1,返回被删元素值。

2025-03-28 18:18:09 281

原创 数据结构每日一题day4(顺序表)★★★★★

题目描述:删除顺序表L中第i个位置的元素,若i的输入不合法,则返回 false;否则将被删元素赋给引用变量e,并将第i+1个元素及其后的所有元素依次往前移动一个位置,返回 true。合法性检查:若顺序表为空、指针为空或位置i不在有效范围(1 ≤ i ≤ length)内,返回false。元素前移:将第i+1到表尾的所有元素依次前移一位,覆盖被删元素的位置。保存被删元素:将第i个元素(对应数组下标i-1)的值赋给引用变量e。复杂度分析:时间复杂度O(n)空间复杂度O(1)

2025-03-27 10:23:28 472

原创 数据结构每日一题day3(顺序表)★★★★★

题目描述:顺序表L的元素递增有序排列,设计一个算法在插入元素x后保持该顺序表仍然递增有序排列,插入成功后返回插入元素所在位置,不成功返回-1。查找插入位置:遍历顺序表,找到第一个大于等于 x 的元素的位置 i;若所有元素均小于 x,则插入到表尾(i = length)。合法性检查:若顺序表已满(length == MAXSIZE)或指针为空,插入失败,返回 -1。元素后移:从表尾开始,将位置 i 及之后的元素全部后移一位,腾出插入位置。插入元素:将 x 存入位置 i,表长加 1,返回插入位置 i。

2025-03-26 11:25:05 1165

原创 数据结构每日一题day2(顺序表)★★★★★

合法性检查:若插入位置 i 不满足 1 ≤ i ≤ length+1 或顺序表已满,则插入失败。元素后移:从最后一个元素开始,将第 i 到第 length 个元素依次后移一位,腾出位置 i。题目描述:在顺序表L的第i个位置插入新元素e,成功返回true,不成功返回false。插入元素:将 e 放入位置 i-1(数组下标从 0 开始)。复杂度分析:时间复杂度O(n)空间复杂度O(1)更新长度:顺序表长度加 1。

2025-03-25 08:15:13 219

原创 数据结构每日一题day1

初始化指针:用两个下标分别指向顺序表的首元素(下标0)和末元素(下标length-1)。题目描述:设计一个高效算法,讲顺序表L的所有元素逆置。要求算法空间复杂度为O(1)算法思想:采用双指针法。交换元素:每次交换两个下标对应的元素,然后首指针右移,尾指针左移。终止条件:当首指针超过或等于尾指针时停止,确保所有元素被交换一次。复杂度分析:时间复杂度O(n)空间复杂度O(1)

2025-03-24 17:03:57 333

原创 求解方程和分数相加

【代码】求解方程和分数相加。

2025-03-16 01:58:09 182

原创 回文串中心扩散法代码模板

【代码】回文串中心扩散法代码模板。

2025-03-16 00:04:37 103

原创 广度优先搜素框架模板

【代码】广度优先搜素框架模板。

2025-03-15 02:32:50 112

原创 简单计算器

贴一个代码框架,记住。

2025-03-14 05:39:39 79

原创 二分快速幂求a的n次方

【代码】二分快速幂求a的n次方。

2025-03-14 00:11:42 76

原创 玛雅人密码bfs

【代码】玛雅人密码bfs。

2025-03-12 11:22:35 100

原创 字符串的大小比较规则

1.从下标0开始按位比,谁的字符大谁就打"app"

2025-03-10 02:57:55 177

原创 关于字符串的截取l,r

一定要留意if后面的大括号包括是哪个部分,r的设置,字符串的截取,l的转移。

2025-03-09 19:34:17 95

原创 分解质因数(高效版)

【代码】分解质因数(高效版)

2025-03-09 18:52:40 71

原创 getline常见误区

1

2025-03-09 03:20:57 94

原创 跳过换行;忽略一个字符

或者是getchar();

2025-03-08 21:12:46 85

原创 烂橘子问题,力扣hot100

【代码】烂橘子问题,力扣hot100。

2025-03-08 13:18:47 111

原创 dfs迷宫问题

【代码】dfs迷宫问题。

2025-03-08 10:09:20 108

原创 bfs迷宫探险

【代码】bfs迷宫探险。

2025-03-07 23:34:18 95

原创 迪杰斯特拉算法

【代码】迪杰斯特拉算法。

2025-03-07 23:28:45 114

原创 用并查集实现克鲁斯卡尔算法求最小生成树

【代码】用并查集实现克鲁斯卡尔算法求最小生成树。

2025-03-07 23:07:49 67

原创 拓扑排序,比赛名次

用队列和栈都可以实现。

2025-03-07 01:59:49 113

原创 dfs题一所有可达路径

【代码】dfs题一所有可达路径。

2025-03-07 00:50:27 75

原创 动态数组vector

【代码】动态数组vector。

2025-03-04 21:39:47 71

原创 关于高精度力扣66

/这里会报错是因为超过int表示的范围了。

2025-03-04 20:51:04 420

原创 关于string的函数

在使用这个函数的时候一定要注意的问题:他不是一个判断类型的函数,所以返回的不是一个bool类型,他如果找到了的话会直接返回位置,这是一个int类型,这个位置可能是0。所以在判断是否查找到时要注意使用静态成员变量std::string::npos。注意find和insert函数参数位置相反。

2025-03-04 16:57:44 166

原创 Z字形字符串转换力扣6

【代码】Z字形字符串转换力扣6。

2025-03-04 14:00:52 120

原创 dfs算法

void dfs(graph g,int v,int visit[]){//当前顶点下标和访问数组。//如果是无向图要加两次边。int a,b,c;//a是起点,b是终点,c是权重。i++){ //构建一个图。i++){ //构建一个图。//分别是顶点数和边数。//对顶点进行初始化。

2025-03-04 02:08:55 418

原创 关于指针的回退

删除一个字符串中的重复字符且保持字符的相对位置不变。为什么在删除一个字符后j要回退?因为j保存的是一个数,当j指向的字符被删除之后,j就指向被删除字符的下一个字符了,同时j还自加,就会导致某些字符被跳过。比如abaacb其中第三个a就被跳过没有删除。力扣299猜数字游戏,也用到了删除字符串中的单个字符,每次删除完后马上要跳回原来的状态。比如:出的数字是11猜的数字也是11时候就被跳过了。

2025-03-04 01:13:54 183

原创 正则表达式分割

遍历字符串,按正则表达式分割后,将子串存入。要引入头文件I#include<regex>定义正则表达式,匹配。

2025-03-04 00:03:24 208

原创 并查集代码模板

【代码】并查集代码模板。

2025-03-03 21:59:59 81

原创 用暴力法会出现的问题

要讨论根据数组的大小讨论,(实际上机的时候可能不需要)以求最长连续子序列为例,力扣128题。

2025-03-03 20:32:52 188

原创 当数组作为函数的参数时

【代码】当数组作为函数的参数时。

2025-03-03 17:55:42 59

原创 判断素数和分解素因数的代码

【代码】判断素数和分解素因数的代码。

2025-03-03 13:05:37 89

空空如也

空空如也

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

TA关注的人

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