没什么太多讲的,可以使用递归和迭代两种方法来做,要仔细考虑各种输入情况。code如下:...
分类:
其他好文 时间:
2014-06-15 15:09:59
阅读次数:
145
RSA算法的求解步骤:
给定两个素数:p q
求出 n=p*q
求出 t=(p-1)*(q-1)
再任意取一个数e e需满足:e
再利用公式 d*e%t=1求出d
最终得到:
私钥 {n,d}
公钥 {n,e}...
分类:
其他好文 时间:
2014-06-15 14:20:14
阅读次数:
132
概述:排序算法可分为比较性的排序,以及运算性的排序;这里详细介绍这些排序的原理,性能,实现,以及应用场合。比较排序一:快速排序1:原理采用了分治思想,在序列A[p...r]中选取一个元素,当然这里是用了p或者r处的元素(规格一致);找到该元素的,满足前面的值都比它小,后面的都比它大;同理让子序列递归...
分类:
其他好文 时间:
2014-06-15 00:41:48
阅读次数:
297
1.枚举所有文件夹(递归)void EnumerateFolders (){ WIN32_FIND_DATA fd; HANDLE hFind = ::FindFirstFile (_T ("*.*"), &fd); if (hFind != INVALID_HANDLE_VALU...
分类:
其他好文 时间:
2014-06-14 23:57:43
阅读次数:
376
简单选择排序时间限制(普通/Java):1000MS/3000MS 运行内存限制:65536KByte总提交:836 测试通过:259描述给定输入排序元素数目n和相应的n个元素,写出程序,利用内排序算法中的简单选择排序算法进行排序,并输出排序过程中每趟及最后结果的相应序列。输入共两...
分类:
其他好文 时间:
2014-06-14 19:04:13
阅读次数:
253
给定一个数串,以及K,求对这个数串K划分的乘积最大值。DP思路:一开始肯定想到的是递归,假设在某两个字符间有一个乘号,那么乘积最大就是乘号两边的区间接着划分的乘积最大值。于是状态空间表示如下dp[i][k]表示从0~i之间有K个乘号的乘积最大值,dp[i][k] = max(dp[j][k-1]*n...
分类:
其他好文 时间:
2014-06-14 18:17:56
阅读次数:
292
下面的方法都是IEnumerable的扩展方法:Average计算平均值; Min最小元素;Max最大元素;Sum元素总和; Count元素数量;Concat连接两个序列;//Unoin allContains序列是否包含指定元素;Distinct取得序列中的非重复元素;Except获得两个序列的差...
分类:
其他好文 时间:
2014-06-14 15:24:23
阅读次数:
429
打印全排列是个有点挑战的编程问题。STL提供了stl::next_permutation完美的解决了这个问题。
但是,如果不看stl::next_permutation,尝试自己解决,怎么做?
很自然地,使用递归的办法:
1. 单个元素的排列只有1个。
2. 多个元素的排列可以转化为:
以每个元素为排列的首个元素,加上其他元素的排列。
有了思路,就可以编码了。
第一个...
分类:
其他好文 时间:
2014-06-14 15:10:03
阅读次数:
263
递归的正式定义:
在数学和计算机科学中,递归指由一种(或多种)简单的基本情况定义的一类对象或方法,并规定其他所有情况都能被还原为其基本情况。
例如,下列为某人祖先的递归定义:
某人的双亲是他的祖先(基本情况)。
某人祖先的双亲同样是某人的祖先(递归步骤)...
分类:
其他好文 时间:
2014-06-14 10:22:52
阅读次数:
162
/*【程序27】
题目:求100之内的素数*/
packagetest;
importjava.util.Scanner;
publicclasstest
{
publicstaticbooleanprime(intnumber)
{
booleanflag=true;
intmid=(int)Math.sqrt(number);
for(inti=2;i<mid+1;i++)
{
if(number%i==0)
{
flag=f..
分类:
编程语言 时间:
2014-06-13 21:12:22
阅读次数:
443