ACM
文章平均质量分 54
xiaowei_nbu
Your story may not have a such happy beginning, but that doesn't make who
you are. It is the rest of your story,who you choose to be.
展开
-
并查集-1
并查集是一种树型的数据结构,用于处理一些不相交集合(disjoint sets)的合并及查询问题。经常采用树林来表示:1. 查找。查找元素所在的集合即查找根节点。2. 合并。将两个元素所在的集合合并为一个集合。3. 合并两个不相交的集合判断两个元素是否属于同一个集合。我们结合相应的题目来说:题目描述:世界上有许多不同的宗教,现在有一个你感兴趣的问题:找出不同的宗教种原创 2015-10-16 14:50:56 · 442 阅读 · 0 评论 -
并查集-2
题目描述:一场地震在东南亚发生了。不幸的是ACM组织通过计算机简历的无线网络遭到毁灭性的影响———网络中所有的计算机都损坏了。在经过维修之后,无线网络又逐渐开始运作了。由于硬件的制约,每两台计算机只能保持不超过d米的距离,才可以直接进行通信,但是每台计算机又可以作为其他两台计算机通信的中介点。也就是说,如果A计算机与B计算机不在能直接通信的范围内,但是它们可以同时通过与A和B计算机通信的C计算原创 2015-10-18 23:39:38 · 403 阅读 · 0 评论 -
全排列递归算法
设计一个递归算法生成n个元素的全排列。算法思想:递归算法的思路比较接近于我们现实生活中的思路。1.试想,我们只有两个数字:12.要对它进行全排列,第一种方式就是12本身,第二种,将12交换,变为21即可。这提示了我们一种交换的思路。2.但这概括的并不全面。试想,我们要对123进行全排列。我们可以采用将1固定,“23”进行全排列,将“2”固定,对“13”进行全排列。将“3”固定,对“原创 2015-12-29 20:24:55 · 527 阅读 · 0 评论 -
整数划分
将正整数n表示成一系列正整数之和:n=n1+n2+...+nk, 其中n1>=n2>=....>=nk>=1, k >=1求正整数n的不同划分个数。 例如正整数6有如下11中不同的划分:65+14+2,4+1+13+3,3+2+1,3+1+1+12+2+2,2+2+1+1,2+1+1+1+11+1+1+1+1+1如果设P(n)为正整数n的划分数,则对于找到递原创 2015-12-29 21:05:40 · 814 阅读 · 0 评论 -
矩阵连乘 DP
矩阵相乘问题: 假设存在一个矩阵A维数是3*2,一个矩阵B维数是2*2,首先我们先看一下A*B的情况,这两个矩阵相乘的计算量: 代码如下://矩阵a和b相乘,p、q分别为a的行和列,q、r分别为b的行和列void MatrixMultiply(int a[][MAXN], int b[][MAXN], int p, int q, int r){ int sum[MAXN][MAX原创 2015-12-30 10:48:21 · 433 阅读 · 0 评论 -
活动安排问题 贪心算法
活动安排问题就是要在所给的活动集合中选出最大的相容活动子集合,是可以用贪心算法有效求解的很好例子。该问题要求高效地安排一系列争用某一公共资源的活动。贪心算法提供了一个简单、漂亮的方法使得尽可能多的活动能兼容地使用公共资源。设有n个活动的集合E={1,2,…,n},其中每个活动都要求使用同一资源,如演讲会场等,而在同一时间内只有一个活动能使用这一资源。 每个活动i都有一个要求使用该资源的起始时间si原创 2015-12-30 11:35:23 · 808 阅读 · 0 评论 -
回溯法中子集树与排列树
回溯法有许多问题,当需要找出它的解集或者要求回答什么解是满足某些约束条件的最优解时,往往使用回溯法。回溯法的基本做法就是搜索,或者是一种能避免不必要搜索的暴力搜索法,这种方法适用于一些组合数相当大的问题。回溯法在问题的解空间中,按深度优先策略,从根节点出发搜索解空间树,算法搜索到解空间中的任意一点时,首先进行判断该节点是不是包含问题的解,如果是不包含的,那么我们进行剪枝过程(就是跳过对该节点为原创 2015-12-31 20:00:10 · 2562 阅读 · 0 评论