自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Mollnn

You Tomorrow will befall.

  • 博客(8)
  • 资源 (1)
  • 收藏
  • 关注

原创 最小生成树Prim与Kruskal算法的比较

最小生成树是图论问题中很基本的一个操作。常用的算法有Prim和Kruskal两种算法。本文对这两种算法稍作区别与讨论。Prim算法是依赖于点的算法。它的基本原理是从当前点寻找一个离自己(集合)最近的点然后把这个点拉到自己家来(距离设为0),同时输出一条边,并且刷新到其他点的路径长度。俗称,刷表。 根据Prim算法的特性可以得知,它很适合于点密集的图。通常在教材中,对Prim算法进行介绍的标程都采用

2016-09-19 21:48:50 14072 1

原创 0-1背包的维度拓展

引言 0-1背包是经典的动态规划背包问题之一,也是多数背包问题的基础。0-1背包标准版本(完全表达)需要两个维度,一个表示物品i,一个表示代价j。优化后,可省去物品维度。那么,如果有两种代价又该如何呢?于是,我们将0-1背包拓展一个维度来进行讨论。核心讲解 取材于现实生活中,你要寄快递,快递对体积和重量均有限制。再比如,常见的军火运输问题,等等。从背包问题的原理来看,我们只需开两个代价维度就可以

2016-09-17 15:30:42 433

原创 【挫纪】多重背包问题的优化细节

众所周知多重背包问题的一个重要优化:二进制分解。 然而在二进制分解时,有细节需要注意。一、分解顺序问题 有时候脑子抽筋,会突然用位运算移位来直接获取分解结果。这种方法是不可取的,例如5=101,按照移位分解的方法就会分解为4+1,而事实上我们要分解成1+2+2二、分解后的冗余运算 分解之后会留下剩余的部分,对于剩余的部分,必须要一次性清除,万不可一次次处理,这样时间复杂度会很高。三、边分解边运

2016-09-16 16:07:50 417

原创 逆序对在OI中实际问题里的细节处理

之前写过一篇关于逆序对的描述文章: http://blog.csdn.net/mollnn/article/details/52503183 如果需要了解与逆序对有关的信息,见上文。本文主要交代,在OI中使用逆序对算法需要注意的细节:判断问题是否确实适合使用逆序对(废话)排序要求是升序还是降序排序要求中遇到等号怎样处理因为逆序对ANS通常很大,所以注意是否要开long long?对应的如

2016-09-16 14:27:13 405

原创 归并排序与逆序对

归并排序是一种运用了二分算法的排序,其基本原理可以理解为拆分对合并。利用归并排序可以便捷地求出逆序对的个数。参考代码如下所示:#include <iostream>#include <cstring>#include <cmath>using namespace std;int n,a[100000],x[100000],ans=0;void msort(int l,int r){

2016-09-11 11:50:50 432

原创 二分算法基础 第一章 简单二分

二分算法是一种效率极高的算法(思想),在很多的实例中都得以运用,比如快排和归并排序。本文将对二分算法的一些基础内容以及使用进行讨论。入门-二分查找 我们先来看一个二分查找的例子。(p2searching.cpp)#include <iostream>#include <cstdio>#include <cmath>#include <cstring>#include <algorithm>

2016-09-10 16:31:18 644

原创 快速幂算法基础

快速幂算法主要应用于求幂模的问题。 我们可以先定义一个问题: 如何求2^31的最后一位数?显而易见,结果当然是8.这个问题是具有特殊性的,可以用某些特殊解法来处理。但是作为我们对快速幂的学习例程来看,我们需要从特殊问题中寻找一般算法。 对于这个问题,最脑残的算法是:#include <iostream>#include <cstdio>#include <cmath>using name

2016-09-10 16:28:19 447

原创 C++STL中String类的分析与运用

[Mollnn.Fan原创,转载请注明出处] 本来以为有了String类,所有的字符串操作都变得非常简单。然后,在某次实际测试中反应出了很大的问题。原本只涉及到区区一个replace,在有参考资料的状态下10分钟轻松解决的问题,只因为忘记了replace函数的原型,导致了问题的复杂化。说实话,对于MFC的CString我或许更加熟悉,但应付竞赛需要,现在开始改掉用MFC的习惯。 在那道替换问题中

2016-09-06 12:55:44 447

Mollnn制作的草稿版

Mollnn制作的一款草稿版软件 给大家分享以下

2012-10-26

空空如也

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

TA关注的人

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