一.求两个正整数的最大公约数
欧几里得算法:又称辗转相除法,是指用于计算两个非负整数a,b的最大公约数。
计算公式gcd(a,b) = gcd(b,a mod b)。
二.结构体的排序
typedef struct student
{
string name; //学生姓名
int achievement; //学生成绩
} student;
//这是函数是sort函数的第三个参数
//如果希望升序排序,就是"<",降序排列就是">"号
//如果希望用其他的参数作为排序条件,只需要把相应的条件改一下(如果改成name),这样结构体就以name作为排序标准
bool comparison(student a,student b){
return a.achievement<b.achievement;
}
int main()
{
sort(a,a+n,comparison);
return 0;
}
三.结构体队列的快速赋值法
struct node {
node() {}
node(string ss, int tt) {
s = ss, t = tt;
}
string s;
int t;
};//这样定义后可以直接给队列赋值。
queue<node> q;
string s = "012345678";
q.push(node(s, 0));
四.循环数组
例如数组下标012345678循环赋值,设当前下标为i,则i向前移动n个单位后,当前坐标
i=(i+9)%9。