当前位置:首页 > 数据结构课程设计-排序算法集成
incr=incr/2; }
printf(\最终排序结果:\ for(i=1;i void bubble_sort(int data[],int size)/*冒泡排序*/ {int i,j,flag,k,temp,num=0; for(i=0;i for(j=0;j printf(\第%d趟排序:\ for(k=0;k printf(\最终排序结果:\ for(i=0;i temp=data[j]; data[j]=data[j+1]; data[j+1]=temp; } } break; void select_sort(int data[],int size)/*选择排序*/ {int base,compare,min,temp,i,num=0; for(base=0;base for(compare=base+1;compare if(data[compare] num++; } printf(\最终排序结果:\ for(i=0;i void adjust(int i,int n)/*将数据调整为堆树*/ {int data[20],j,k,done=0; printf(\第%d趟排序:\ for(i=0;i k=data[i]; j=2*i; while((j<=n)&&(done==0)) {if((j {data[j/2]=data[j]; j=2*j; } } data[j/2]=k; } void main() {int data[20]; int size=0,m=0,i,j,num,k,temp,n=0; printf(\请输入初始关键字(输入0结束):\\n\ do { } while(data[size++]!=0); printf(\你输入的初始关键字为:\for(j=0;j scanf(\ m++; printf(\、希尔排序\\n\printf(\、冒泡排序\\n\printf(\、选择排序\\n\printf(\、堆排序\\n\printf(\请选择排序方法:\\n\scanf(\switch(num) {case 1: printf(\插入排序************\\n\ for(i=0;i<50;i++)printf(\ insertion_sort(data,--size); for(i=0;i<50;i++)printf(\ break; case 2: printf(\希尔排序************\\n\for(m=0;m<50;m++)printf(\ shell_sort(data,--size); for(i=0;i<50;i++)printf(\ break; case 3: printf(\冒泡排序************\\n\for(i=0;i<50;i++)printf(\ bubble_sort(data,--size); for(i=0;i<50;i++)printf(\ break; case 4: printf(\选择排序************\\n\for(i=0;i<50;i++)printf(\ select_sort(data,--size); for(i=0;i<50;i++)printf(\
共分享92篇相关文档