- 博客(5)
- 收藏
- 关注
原创 拓扑排序的模板
//拓扑排序的模板 #include #include struct data { int in; // 某点的入度 int out; // 某点的出度 }s[]; int a,b,n,stk[]; bool map[][]; void push(int k); { stk[++top] = k; } void Solve() {
2007-11-17 11:21:00
918
原创 欧几里得算法
欧几里得算法是拥有2000年历史的古老算法,其用于找出两个整数的最大公约数。其思想是:有整数a和b(|a|>|b|),令a = kb + c(k是非零整数)。1.c为a除以b的余数,如果c == 0,那么就意味着a和b的最大公约数就是b。2.同样c = a - kb(注意|c|>|b|),a为c除以b的余数,如果a == 0,那么b就是c和b的最大公约数。由1和2可得,a与
2007-11-17 11:19:00
600
原创 辗转相除法
最大公约数 采用辗转相除法可以获得,最小公倍数 就是 x*y/最大公约数 了 .... 用辗转相除法求两个数的最大公约数的步骤如下: 先用小的一个数除大的一个数,得第一个余数; 再用第一个余数除小的一个数,得第二个余数; 又用第二个余数除第一个余数,得第三个余数; 这样逐次用后一个数去除前一个余数,直到余数是0为止。那么,最后一个除数就是所求的最大公约数(如果最后的除数是1,那么原来的两个数是互质
2007-11-16 11:35:00
517
原创 转 第13章、类
类定义包含两部分:类头,由关键字class 及其后面的类名构成类体,由一对花括号包围起来类定义后面必须接一个分号或一列声明。例如:class Screen { /* ... */ };class Screen { /* ... */ } myScreen, yourScreen;在类体中,对类的数据成员和成员函数进行声明,并指定这些类成员的访问级别。类体定义了类成员表类
2007-11-14 21:23:00
447
原创 开自定义operator new与operator delete的迷雾
C++里允许用户通过自定义operator new的方式来更改new表达式的行为,这给了程序员定制内存管理方案的自由。但是享受这种自由的时候必须遵守一定的规范,具体可以参见《Effective C++ 2nd》的相关条款。本文补充解释一些特别容易引起误解的问题。 operator new和operator delete都有其正规形式(normal signature): void* operato
2007-11-10 11:12:00
486
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人