自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 动态规划(普通dp,01背包,完全背包)

此文为自己复习理解用,本人菜鸡一枚,如有不当之处请指正首先看一道例题这个问题我们可能首先会想到用递归解决,但如果有n种硬币,需要m元(键入),用递归解决就不合适了,这时就需要我们的动态规划算法了,它与递归之间的区别主要在于dp将计算过的结果存了下来,而递归则进行了许多重复计算。附c++递归代码#include<iostream>#include<algorithm>using namespace std;int dg(int x){ if(x&.

2021-08-13 11:35:28 271

原创 洛谷 P2141 [NOIP2014 普及组] 珠心算测验

上原题一看题目,我们就可以知道,要想优化程序,就要先给容器内的元素排序(虽然此题数据很小),再加上题目中提到“集合”,我们就想到了STL里的set,因为set可以去重+排序,其实本人感觉不然,尤其是对于新手,题目已经告诉我们不存在重复元素,那我们就可以直接用数组模拟,加个sort排序即可(此处的麻烦是指后面的调用,查找麻烦,需要用到iterator迭代)因为此题的数据范围很小,我们直接O(n^2)暴力枚举即可上代码#include<iostream>#include&lt

2021-07-01 20:23:49 209

原创 c++ Bellman-Ford 算法

Bellman-Ford算法用于解决有边数限制的最短路问题,且可以应对有负边权的图代码实现:#include<iostream>#include<cstring>#include<algorithm>#define inf 0x3f3f3f3fusing namespace std;const int N=1e4+10;const int M=510;int m,n,k,dis[M],backup[M];//m条边,n个点,在1号点到n号点之

2021-06-27 21:22:50 675 2

原创 c++ 堆优化版dijkstra 代码实现

dijkstra是图论中解决最短路问题的重要算法之一,必须熟练掌握dijkstra用于解决单源最短路问题,要求图中必须不存在负边权朴素dijkstra的时间复杂度为O(n^2),堆优化版dijkstra的时间复杂度为O(mlogn),两者的主要差异在于堆优化版采用优先队列来存储当前所在的点和与这个点联通的点之间的距离,从而免去了一次寻找与当前点联通且距离最小的点的循环下面是代码,不易理解的地方会有注释,帮助理解#include<iostream>#include<cst

2021-06-27 17:53:14 1067 1

空空如也

空空如也

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

TA关注的人

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