内部排序算法比较课程设计报告(7种基本排序)(3)

2019-01-27 14:32

图2

图3

图4

图5

6、用户使用说明

内部排序算法比较用户使用说明

本系统采用Visual C++语言编写,运用软件工程的思想, 采用面向对象分析、设计的方法学完成。本程序主要用于人们比较排序算法,从直观感受各种排序的优缺点。

7、参考文献

[1] 严蔚敏,吴伟民. 数据结构(C语言版) [M]. 北京:清华大学出版社,1997.04 [2] 严蔚敏,吴伟民. 数据结构题集(C语言版) [M]. 北京:清华大学出版社,1997.04 [3] 汪杰等,数据结构经典算法实现与习题解答[M]. 北京:人民邮电出版社,2004 [4] 陈媛,何波,涂晓红等,算法与数据结构[M]. 北京:清华大学出版社,2005 [5]李春葆.数据结构习题与解析(第二版) [M].北京:清华大学出版社,2004.07

8、附录

#include #include #include #include #include #define N 100 int p,q; //起泡排序

void gensort(int b[],int n) {

int i,j;int s=0,t=0; for(i=0;i

for(j=i+1;j

if(b[i]>b[j]) {

int temp=b[i]; b[i]=b[j]; b[j]=temp; s+=3; }}}

cout<<\移动次数=\比较次数=\}

//插入排序

typedef int KeyType;

struct rec {

KeyType key; };

typedef rec sqlist[N];

void insertsort(sqlist b,int n)

{

int i,j;int s=0,t=0; for(i=2;i

b[0]=b[i]; s++; j=i-1; t++;

while(b[0].key

b[j+1]=b[j]; j--; s++; t++; }

b[j+1]=b[0]; s++; }

cout<<\移动次数=\比较次数=\}

//希尔排序

void shellsort(sqlist b,int n) {

int i,j,gap; rec x;

int s=0,t=0; gap=n/2; while(gap>0) {

for(i=gap+1;i

j=i-gap; while(j>0) { t++;

if(b[j].key>b[j+gap].key) {

x=b[j];b[j]=b[j+gap]; b[j+gap]=x;j=j-gap; s+=3; }

else j=0;

gap=gap/2; }}

cout<<\移动次数=\比较次数=\}}

//选择排序

void gentsort(int b[],int n) {

int i,j,k; int s=0,t=0;

for(i=0;i

k=i;

for(j=i+1;j

if(b[k]>b[j]) {k=j;} }

if(k!=i)

{int temp=b[k]; b[k]=b[i]; b[i]=temp; s+=3; }}

cout<<\移动次数=\比较次数=\}

//快速排序

void output(sqlist b,int n)//输出元素值 {

for(int i=0;i

cout<

void display(int n,int m)//输出计数 {

cout<<\移动次数=\比较次数=\}

void BeforeSort()//初始化计数器 {


内部排序算法比较课程设计报告(7种基本排序)(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2014江西公务员面试人际关系题精讲之多重关系-2014江西公务员面

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: