自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 各种最短路径算法复杂度分析(包含队列版)(代码随想录)

que.empty()),里面依旧有一层随着出队节点遍历次数变化的循环,这个跟dijkstra不同,dijkstra是不会重复遍历已经入队的节点,而这个是会重复遍历的,只要节点相连就入队,那么整体上来看,会有很多重复入队的节点,而不是像dijkstra一样所有节点只入队一次,因此算法复杂度是不固定的,最高是每个节点都与其他节点相连的情况,每次出队一个节点,都会有n-1个节点加入,那么出队的次数相当于边的数次记为m,时间复杂度为o(m*n*logm);对于循环中包含队列的,我们把循环次数乘以入队节点个数。

2024-08-09 17:57:16 119

原创 背包与组合问题

而dp数组的定义一般根据题目要求的结果来定义,比如,在背包问题中,我们需要取出在背包一定重量下的物品中最大价值的组合,那么我们就定义dp数组为在取第i个物品时,前i个物品中背包的最大价值,又比如组合问题,在一个序列中得到满足某个条件的组合数,假设这个条件是组合和为某个数,那么我们就定义dp数组为在取第i个数时,前i个数中满足和为目标值的组合数。

2024-07-15 10:34:37 320

原创 c++递归函数的参数为STL容器引用时的使用注意事项

当容器作为函数的参数时,假设函数为run(vector nums),nums是一个对象,此时为复制构造函数构造参数nums,如果为run(vector &nums),此时则是对象引用,是直接在操作要传递进来的实参对象,与run(vector nums),直接*nums是一样的,在函数内部修改nums的内容会直接影响到外部的实参。注意在递归函数(travalsal())返回后,删除掉末尾在root->right或者root->left里面添加的节点。是指没有子节点的节点。

2024-06-18 18:20:12 837

空空如也

空空如也

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

TA关注的人

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