- 博客(2)
- 收藏
- 关注
转载 关于LCA的离线算法——Tarjan
利用并查集优越的时空复杂度,我们可以实现LCA问题的O(n+Q)算法,这里Q表示询问 的次数。 Tarjan算法基于深度优先搜索的框架,对于新搜索到的一个结点,首先创建由这个结点 构成的集合,再对当前结点的每一个子树进行搜索,每搜索完一棵子树,则可确定子树 内的LCA询问都已解决。其他的LCA询问的结果必然在这个子树之外,这时把子树所形 成的集合与当前结点的集合合并,并将当前结点设为这个
2012-03-28 19:32:16 244
转载 异常处理,简单而又复杂的问题
异常处理,简单而又复杂的问题 一个好的软件系统,必定从整体上有一个好的异常处理机制;一个好的程序员必定对异常有着充分的理解和认识——异常处理,简单而又复杂的问题。 1为什么需要异常? 应用程序必须处理独立于程序本身的特殊情况,如: A, 访问不存在的文件 B,请求内存时遇到可用内存不足 C, 访问某一资源时没有足够权限 D, 用户获取了非法数据(如年份为5000) 如果不处理
2012-03-21 16:22:34 313
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人