自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 static全局变量和static函数的比较,以及static全局变量与static局部变量的比较

中。2.而对于。

2024-01-16 09:31:47 404 2

转载 Dijkstra算法求解单源最短路径

感谢:https://www.bilibili.com/video/BV1MU4y1D729/?spm_id_from=333.788.top_right_bar_window_history.content.click&vd_source=8c272561e06faf312953ef54bc6d3956提供的非递归思路!!

2024-01-15 21:03:09 56

原创 C++中static变量的初始化

如果采用静态初始化,是在编译时完成的初始化,即是在main()函数执行前由运行时调用相应的代码进行初始化的。· 如果采用静态初始化,是在加载时完成的初始化,即是在main()函数执行前由运行时调用相应的代码进行初始化的。· 如果采用静态初始化,是在加载时完成的初始化,会在main()函数执行前由运行时调用相应的代码进行初始化的;· 如果采用动态初始化,也是在加载时调用的,会在main()函数执行前由运行时调用相应的代码进行初始化的。同时,在加载期,是线程安全的。调用相应的代码进行初始化的。

2023-10-13 16:57:44 4340

原创 近期重点文章

静态变量初始化时机:https://blog.csdn.net/IT_Financial/article/details/126944562。编译加载运行:https://blog.csdn.net/liu2419918682/article/details/128792188。程序编译过程:https://zhuanlan.zhihu.com/p/476697014。在内存的分段:https://zhuanlan.zhihu.com/p/348026261。C++全局变量和静态变量的异同。

2023-10-12 20:41:17 73

原创 剪枝优化!力扣77:回溯算法求组合数

—明明是这一层就可以排除掉的操作,结果到下一层,不但没有终止递归并输出结果,还发现pre+1已经大于n,结果还得回溯,确实是浪费、没有意义!还需要k-singlePath.size()-1个(注意,这里的判断还在for循环的条件里面,还没执行到singlePath的push_back()函数!究其原因,就是因为执行完这些操作时,会发现剩下的元素不能够满足还需要的元素,导致最终无法输出组合数!设当前加入元素为i,则剩余元素为i+1, ..., n-1, n,总共n-i个元素。所以,循环条件应当为。

2023-09-12 17:19:31 45

原创 非递归法!力扣450:删除二叉搜索树/BST/二叉排序树/二叉查找树的结点

由于二叉搜索树的特性,非递归法不需要额外模拟栈,但是注意,删除结点时必须知道其父结点、以及所删除的结点是父结点的左孩子还是右孩子!

2023-09-10 16:27:24 36

原创 啦啦啦啦啦

2023-08-20 11:55:48 49

原创 二叉树的最大深度+最小深度

借鉴层序遍历的思想,构造队列临时存储每层的根结点。所以最大深度为我们层序遍历的层数。

2023-08-12 21:31:03 65

原创 二叉树非递归(迭代)遍历

保存父亲结点到自建栈内,也就是一路沿着左边压栈,回头了就弹出父结点,再走别的路。(树之所以要用栈,是因为下去了就没法上去)

2023-07-24 17:08:05 21

原创 二叉树前序遍历:递归和非递归方法

看了王卓老师的数据结构与算法,收获挺多的!

2023-07-22 19:50:30 25

原创 leetcode159 至多包含两个不同字符的最长子串

两种方法时间效率都是O(n),但是方法二左边界收缩不是单纯地前进一位,而是根据下标最小值,直接跳转到该最小值后一位,所以时间效率更高!

2023-07-18 19:55:07 107

原创 leetcode 2679 矩阵中的和

第三种方法:定义一个maxVal,初始化为nums[j][L-1-i],每次遍历一行数组时就跟maxVal比较要不要更新其值,比第二种方法更省时间省空间。第二种方法:预处理——每行数组进行排序,但是每次找每列的最大值是把各行最大值放到一个maxArr数组中,再找最大值,浪费了空间和时间。

2023-07-18 15:54:08 29

原创 leetcode415 字符串相加——“逐位相加,逢十进一”,有效地避免了int溢出

这道题有一个算例是"6913259244"+ "71103343",如果是字符串转成int,会导致int溢出,所以选择“逐位相加,逢十进一”,细节可以看看图中的代码。leetcode 2也借鉴了这个思路。

2023-07-17 21:55:25 38

原创 leetcode76,更高效率的哈希表比较方法?

不知道leetcode438也能借鉴这个方法不?虽然那道题直接把哈希表一把判断相等时间效率也很高了……如果是每次都是模式串的哈希表中的元素与滑动窗口中对应的元素比较大小,时间效率就变成了O(n*m)如果是用图中的双指针法,时间效率就是O(n+m),快了不少!(原谅我还没弄懂怎么好理解……

2023-07-17 21:47:00 31

空空如也

空空如也

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

TA关注的人

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