算法
jackiezlu
这个作者很懒,什么都没留下…
展开
-
欧几里得算法以及扩展算法
一、简介 欧几里得算法又称“辗转相除法”,它首次出现于欧几里得的《几何原本》(第VII卷,命题yⅠ和Ⅱ)中,而在中国则可以追溯至东汉出现的《九章算术》。它是用来求最大公约数的算法。 二、证明 对于两个整数a,b.假设他们的最大公约数c = gcd( a, b ),则对于b,a mod b的最大公约数也是c,即:gcd( a,b ) = gcd( b,a mod b )。a = kb原创 2013-09-03 11:18:41 · 698 阅读 · 0 评论 -
算法之插入排序
#include void insertion( int a[], int l, int r );void display( int a[], int l, int r );intmain(int argc, char const *argv[]){int a[100];int n = 0, i;scanf("%d", &n);for ( i = 0; i < n; ++i){scanf("%d"原创 2013-12-08 21:34:46 · 647 阅读 · 0 评论 -
算法之归并排序
一、自顶向下的归并排序 #include int b[100]; void mergeSort( int a[], int l, int r ); void merge( int a[], int l, int m, int r ); void display( int a[], int l, int r ); int main(int argc, char const *原创 2013-12-10 22:31:35 · 728 阅读 · 0 评论 -
算法之快速排序
int partition( int a[], int l, int r ) { int i = l-1, j = r, v = a[r]; int tmp; for ( ; ; ) { while ( a[++i] < v ) ; while ( v < a[--j] ) if ( j == l ) break; if ( i >= j ) bre原创 2013-12-11 14:19:14 · 530 阅读 · 0 评论