算法
文章平均质量分 56
玉vs璞
努力向别人学习提高自己
展开
-
快速幂算法
快速幂取模算法 在网站上一直没有找到有关于快速幂算法的一个详细的描述和解释,这里,我给出快速幂算法的完整解释,用的是C语言,不同语言的读者只好换个位啦,毕竟读C的人较多~ 所谓的快速幂,实际上是快速幂取模的缩写,简单的说,就是快速的求一个幂式的模(余)。在程序设计过程中,经常要去求一些大数对于某个数的余数,为了得到更快、计算范围更大的算法,产生了快速幂取模算法。[有读者反映在讲快速幂部分时有点转载 2013-03-28 19:46:55 · 521 阅读 · 0 评论 -
nyoj 喷水装置(二)
以前做过的,也是贪心算法的应用,wa了好多次,中间有几个细节没考虑到,这次贴出来备忘 点击打开链接 #include 02.#include 03.#include 04.struct IN 05.{ 06.double a; 07.double b; 08.}s[10005]; 09.int cmp(const void原创 2013-03-28 19:42:41 · 490 阅读 · 0 评论 -
字典树学习
nyoj 290 动物统计加强版(字典树)点击打开链接 #include #include #include #define MAX 26 char str[15],s[15]; int max; struct Trie { struct Trie *next[MAX]; int flag; }; struct Trie *root; struct Tr原创 2013-03-28 12:52:14 · 470 阅读 · 0 评论 -
几种排序算法
几种比较常见的排序算法 第一种: /* 函数功能:双向冒泡排序 2013.7.8 时间复杂度O(n^2) */ #include void mp(int *array,int n) { int bmin=0; int bmax=n; int mmax,mmin,i; int a; while(bmin {原创 2013-07-09 10:53:01 · 506 阅读 · 0 评论 -
单链表的几种操作
点击打开链接 #include #include #include #include using namespace std; /*单链表节点结构*/ typedef struct NodeType { char elem; NodeType *next; }Node; /*单链表逆置*/ Node*ReverseList(Node*head) { i原创 2013-07-09 11:05:39 · 517 阅读 · 0 评论 -
回文串
用递归判断是否是回文串, NYoj试练 #include #include int hwen(char *a,int i,int n) { if(i>n/2) return 1; else return a[i]==a[n-i-1] ? hwen(a,i+1,n) : 0; } int main() { int n,i,j,原创 2013-07-23 16:57:01 · 458 阅读 · 0 评论 -
汉诺塔
汉诺塔的递归实现 #include void move(char a,char b) { printf("%c->%c\n",a,b); } void hanoi(int n,char a,char b,char c) { if(n==1) move(a,c); else { hanoi(n-1,a,c,b);原创 2013-07-24 14:03:29 · 466 阅读 · 0 评论