
算法
文章平均质量分 58
beyondkmp
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
计算阶乘n!末尾所含0的个数
解题思路: 前一段时间看到一个往年程序竞赛的题解, 有一个题目说的是求 100 的阶乘末尾有多少个 0. 题解中给出的讲解提到, 一个数 n 的阶乘末尾有多少个 0 取决于从 1 到 n 的各个数的因子中 2 和 5 的个数, 而 2 的个数是远远多余 5 的个数的, 因此求出 5 的个数即可. 题解中给出的求解因子 5 的个数的方法是用 n 不断除以 5, 直到结果为 0, 然后把中间得转载 2013-12-31 13:08:27 · 1705 阅读 · 0 评论 -
查找数组中第二大的数(c语言)
#include int flag=0; //标记数组内的内容全部相同 int findsecond(int a[],int len) { int max,secmax; int i; if (a[0]>a[1]) { max=a[0]; secmax=a[1]; } else { max=a原创 2014-04-02 17:17:22 · 6098 阅读 · 2 评论 -
堆排序算法(c 语言实现)
#include int left(int i) { return 2*i; } int right(int i) { return 2*i+1; } void max_heapify(int a[],int i,int size) { int l,r,largest; int tmp,j; for (j=i;j<=size;j=largest)原创 2014-04-12 23:08:29 · 988 阅读 · 0 评论 -
AES中构造s盒中的乘法逆元的c语言实现
此题根据扩展欧几里德算法来求多项式的乘法逆元。此算法可以参照密码编码学与网络安全p96。 在实现过程的主要的解决问题有三个: 实现多项式的乘法,核心函数如下: //多项式乘法,算法就是书上96的算法 while(b) { r=b%2; b=b/2; if(value>>7)//b7为1,就要与00011011相与 value=(value e原创 2014-07-23 22:55:35 · 4296 阅读 · 1 评论