自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 并查集的 路径压缩(递归和非递归)

这里的思路是 在每一次的找父亲节点的时候我们把每一个孩子的父亲的改成他的祖先。因为有可能一个孩子的关系很复杂可能就是一条链,这样查找就没浪费时间。 //这是简单的递归实现 find (int x) { while(x!=father[x]) father[x] = find(father[x]) ; return father[x] ; } //这...

2014-07-31 08:34:00 349

转载 优先队列来处理的 最短路径

看了好久终于看懂了 ,首先你要知道 优先队列在这里的作用是什么。在Djsktra的算法中 我们需要有三个for 其中有个for是要找到 连接中最小的点 并且返回该点 ,这里的优先队列把这个for循环替掉。 typedef pair pii; priority_queue< pii , vector , greater > q; 这个优先队列是根据 pai...

2014-07-31 08:33:00 293

转载 并查集的粗劣想法(易懂)

这里我自己说一下我自己学的感受吧 。 int findset(int a) //不带路劲压缩 { while(pa[a] != a) { a = pa[a]; } return a; } ...

2014-07-31 08:32:00 118

转载 最短路径 简单的代码

看了这些代码之后 总结了一下 其实就那三个for 循环 一:找与v有连接的点 。二:从这些连接的点找到最小,把他看成是下一次的v 。 三: 你要把有出现的那些边 更新掉 。 详解在代码里写出了 #include #include #include using namespace std ; #define N 100 #define M 10...

2014-07-31 08:31:00 231

转载 最短路径之Kurskal

个人观点,较prime算法,Kurskal算法更加的简单,这里我们只需要每一次去需找权值最小的那条边就好,在这里我们先可以利用sort进行快排,得到权值最小的map[i] 。 得到该条边的两个节点map[i].u 和map[i].v,这时候你需要判断能不能用这条边,因为最小生成树是不能形成回路,所以用到了 并查集的方法,可以快速的判断这两个点是否满足条件。如果不存在关系那么那么就把这条边...

2014-07-30 10:53:00 132

空空如也

空空如也

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

TA关注的人

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