05 2012 档案

摘要:生成非重复随机数的两种编程思路:1、每次都在相同的范围内获取随机数,并将新生成的随机数与已生成的随机数逐一相比较,如果与已生成的随机数相同则重新获取随机数,若不同,则存储该随机数,继续获取下一个;2、每次获取随机数时,都将之前生成的随机数排除在外,以保证生成的随机数不重复。基于思路1,C++程序实现如下: 1 /******************************************************************** 2 * 3 * 文 件 名:Random.cpp 4 * 5 * 文件描述:生成不重复的随机数 6 * 7 * 创 建 人:... 阅读全文
posted @ 2012-05-17 19:51 crazylhf 阅读(633) 评论(0) 推荐(0)
摘要:1 /********************************************************************** 2 * 3 * 文 件 名:InsertSort.cpp 4 * 5 * 文件描述:演示插入排序算法 6 * 7 * 创 建 人:crazyhf 2012年05月12日 8 * 9 * 版 本:1.0 10 * 11 * 修改记录: 12 * 13 *************************************************************... 阅读全文
posted @ 2012-05-12 23:46 crazylhf 阅读(207) 评论(0) 推荐(0)
摘要:在数学上,如果数A与数B对M取模后得到的值相等,即A%M=B%M,则称A与B是关于模M同余,记为A≡B。此外对于同余运算有如下定理:(自己推导的话也可以轻易得证)(1)若A≡B,则存在常数D,使得A+D≡B+D ;(2)若A≡B,则存在常数D,使得A*D≡B*D ;(3)若A≡B,则存在常数n,使得A^n≡B^n ;基于此原理,对于模幂运算,即A^n%m的运算可以,通过A^n≡B^n(前提A≡B)的形式来化简,辅以定理(1)和(2),可以实现以较短的时间进行求解。程序如下: 1 /*=========================================== 2 * 3 * 函 .. 阅读全文
posted @ 2012-05-04 21:13 crazylhf 阅读(376) 评论(0) 推荐(0)