小迪的Blog
学习ing...(注明:该Blog中的任何信息都非原创,只是作为个人的阅读笔记)
摘要: voidlnsertSort(SeqListR){//对顺序表R中的记录R[1..n]按递增序进行插入排序inti,j;for(i=2;i<=n;i++)//依次插入R[2],…,R[n]if(R[i].key<R[i-1].key){//若R[i].key大于等于有序区中所有的keys,则R[i]应在原有位置上R[temp]=R[i];j=i-1;do{//从右向左在有序... 阅读全文
posted @ 2005-12-13 20:36 小迪 阅读(452) 评论(0) 推荐(0) 编辑
摘要: voidSelectSort(SeqListR){inti,j,k;for(i=1;i<n;i++){//做第i趟排序(1≤i≤n-1)k=i;for(j=i+1;j<=n;j++)//在当前无序区R[i..n]中选key最小的记录R[k]{if(R[j].key<R[k].key){k=j;//k记下目前找到的最小关键字所在的位置}}if(k!=i){/... 阅读全文
posted @ 2005-12-13 20:16 小迪 阅读(498) 评论(0) 推荐(0) 编辑
摘要: voidQuickSort(SeqListR,intlow,inthigh){//对R[low..high]快速排序intpivotPos;//划分后的基准记录的位置if(low<high){//仅当区间长度大于1时才须排序pivotPos=Partition(R,low,high);//对R[low..high]做划分QuickSort(R,low,pivotPos-1);//对左区间递归... 阅读全文
posted @ 2005-12-13 19:44 小迪 阅读(459) 评论(0) 推荐(0) 编辑
摘要: voidBubbleSort(SeqListR){//R(l..n)是待排序的文件,采用自下向上扫描,对R做冒泡排序inti,j;boolexchangeFlag;//交换标志for(i=1;i<n;i++){//最多做n-1趟排序exchangeFlag=false;//本趟排序开始前for(j=n;j>i;j--)//对当前无序区R[i..n]自下向上扫描{if(R[j].key&... 阅读全文
posted @ 2005-12-13 18:23 小迪 阅读(446) 评论(0) 推荐(0) 编辑