数据结构
宋常华
不积跬步,无以至千里。
展开
-
插入排序的几种算法
1.直接插入排序 直接插入排序是一种最简单的排序方法,它的基本操作是将一个记录插入到已排好序的有序表中,从而得到一个新的、记录数增1的有序表。 一般情况下,第i趟直接插入排序的操作为:在含有i-1个记录的有序子序列r[1…i-1]中插入一个记录r[i]后,变成含有i个记录的有序子序列r[1…i];并且,和顺序查找类似,为了在查找插入位置的过程中避免数组下标出界,在r[0]处设置监视哨。在自i-1原创 2015-07-10 17:12:57 · 828 阅读 · 0 评论 -
交换排序的几种排序算法
起泡排序void bubbleSort(Elem R[]){ int i,j; i=n; while(i>1){ int lastChangeIndex=n; for(j=1;j<i;j++){ if(R[j]>R[j+1]){ swap(R[j],R[j+1]);原创 2015-07-15 10:32:44 · 777 阅读 · 0 评论 -
选择排序的几种算法
选择排序的基本思想是:每趟从n-i+1(i=1,2,…,n-1)个记录中选取关键字最小的记录作为有序序列中第i个元素。 简单选择排序void SelectSort(Elem R[],int n){ //对R[1]~R[n]做简单选择排序 int i; for(i=1;i<n;i++){ j=SelectMinKey(R,i); //在R[i...n]原创 2015-07-21 17:18:17 · 1922 阅读 · 0 评论