
算法
changjiangwuwu
这个作者很懒,什么都没留下…
展开
-
合并排序
//合并排序 int num = 0; void Merge(int arr[],int Tarr[],int s,int m,int e) { num++; int i = s,j = m+1,k = s,x; while(i<=m&&j<=e) { if(arr[i] < arr[j]) Tarr[k++] = arr[i原创 2013-06-02 14:19:19 · 445 阅读 · 0 评论 -
简单选择排序
//选择排序 //第i趟循环找出第i小的数据并与arr[i-1]交换数据 void select_sort(int arr[],int n) { int i,j,k,temp; for(i = 0;i<n;i++) { k = i; for(j = i+1;j<n;j++) if(arr[j] < arr[k]) k = j; if(i != k) {原创 2013-06-02 15:12:10 · 366 阅读 · 0 评论 -
二分插入排序
//二分插入排序void Binary_insert_sort(int arr[],int n) { int i,j,r,low,high,mid; for(i = 1;i < n; i++) { r = arr[i]; low = 0,high = i-1; while(low <= high) { mid = (low+high)/2; if(r > arr[原创 2013-06-03 21:51:22 · 425 阅读 · 0 评论 -
堆排序
//堆排序 void Heap(int heap[],int i,int size) { int l,r,temp,mix; l = 2*i; r = 2*i+1; if(l<size&&heap[l-1]<heap[i-1]) mix = l; else mix = i; if(r<size&&heap原创 2013-06-02 14:16:22 · 423 阅读 · 0 评论 -
快速排序
//快速排序 int quickSort(int arr[],int s,int e) { int i=s,j=e; int R; R = arr[s]; int temp=0; while(i<=j) { while(arr[i]<=R)i++; while(arr[j]>R)j--; if(i<j原创 2013-06-02 14:17:50 · 347 阅读 · 0 评论