自定义博客皮肤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)
  • 收藏
  • 关注

原创 最大递增子序列——POJ1836

     这道题目最简单的算法是枚举所有i(1      还有一种算法,就是构造一个基准序列,基准序列是h数组中的所有元素的按递增顺序排序(去除重复元素)+h数组中的所有元素的按递减顺序排序(去除重复元素)所形成的序列。之后,我们只要求h数组和基准序列的最大公共子序列就行了。算法的时间复杂度是O(n^2)。      还有一种时间复杂度为O(nlog(n))的算法。我们只需要构造出数组f1

2010-03-31 16:15:00 761

原创 Tarjan算法的改装

     Tarjan算法是用来解决强连通分量问题的常用算法,算法是基于深度优先搜索的架构,在深度优先搜索的过程中,迭代地求出各个节点U的标值lowlink(U),其中:lowlink(U)=min(dfn(U),dfn(W))。在这里,W是从U和U的后代点出发用一条后向弧和横叉弧所能达到的同一个强连通分支的节点,dfn(U)是深度优先遍历中节点U的遍历序号。     这样子,我们发现,在求解

2010-02-07 16:12:00 419

原创 LCA问题的两种解法

    LCA问题的常见解法有两种:Tarjan算法和RMQ算法。两种算法有一个共同点,就是都是基于深度优先搜索的框架。本文以POJ1470为例,对这两种算法做一个总结。   Tarjan:    #include using namespace std;const int MAXN=910;struct TreeNode{int data,next;}nodes[

2010-02-05 17:17:00 388

空空如也

空空如也

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

TA关注的人

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