摘要: 4:用RANDOM(0,1)实现RANDOM(a,b): 这道题的实现思路:这个题目相当于在能随机生成 0, 1 的前提下,要求随机生成 n=b-a+1 个整数。 1、把要生成的数标记为 a, a+1, a+2,..., b-a+1,…,b-1,b 2、取最小的 m,使得2^m >= n 3、通过随 阅读全文
posted @ 2015-04-19 17:34 gqtc 阅读(139) 评论(0) 推荐(0)
摘要: 最大子数组,给定数组,在这个数组中找到这样的子数组:子数组的和是所有子数组中最大的(子数组必须是连续的)。 typedef struct { int max; int subbegin; int subend; }SUBMAX; #define NEINFINITE (0x80000000) #de 阅读全文
posted @ 2015-04-19 16:33 gqtc 阅读(265) 评论(0) 推荐(0)
摘要: 1:Θ记号: 对一个给定的函数g(n),用Θ(g(n))来表示以下函数的集合: Θ(g(n))={f(n):存在正常量c1、c2 和 n0,使得对所有n≥n0,有0≤c1g(n)≤f(n)≤c2g(n)} 称g(n)是f(n)的一个渐近紧确界(asymptotically tight bound) 阅读全文
posted @ 2015-04-19 16:23 gqtc 阅读(308) 评论(0) 推荐(0)
摘要: 1:插入排序:类似于扑克牌,为了将一张牌插入正确的位置,从右向左将它与已在手中的每张牌进行比较,这样,拿在手上的牌就总是排序好的。分析该算法的时间复杂度: 求和: 因此,最好运行时间为: 可以把运行时间表示为an+b。因此这是n的线性函数。 最差运行时间为: 把该最坏情况运行时间表示为an^2+bn 阅读全文
posted @ 2015-04-19 15:38 gqtc 阅读(186) 评论(0) 推荐(0)
摘要: 1:对于有些问题,目前还不知道是否存在有效的算法,这些问题的一个子集是NP完全问题,对于NP完全问题:a是否存在有效算法是未知的;b如果任何一个NP问题存在有效算法,那么所有的NP完全问题都存在有效算法;c有些NP完全问题类似于一些已经有有效算法的问题。 2:如果两个算法,比如插入排序和归并排序,插 阅读全文
posted @ 2015-04-19 15:28 gqtc 阅读(188) 评论(0) 推荐(0)