资源简介
大二时做的课程设计,快速排序、冒泡排序、堆排序等共6种排序算法的时间比较。其中包含一份写好的报告和C++写的程序,通俗易懂。
代码片段和文件信息
#include“排序实现.h“
#include
#include
using namespace std;
//产生顺序数列
void SequentialList(SortSqList&L) {
for (int i = 1; i <= L.length; i++)
L.r[i].key = i;
}
//产生逆序数列
void ReverseList(SortSqList&L) {
for (int i = 1; i <= L.length; i++)
L.r[i].key = L.length - i + 1;
}
//产生随机数列
void RandomList(SortSqList&L int x int y) {
srand((unsigned)time(NULL));
for (int i = 1; i <= L.length; i++)
L.r[i].key = rand() % (y - x + 1) + x; //产生x与y之间的随机数
}
//用顺序数列测试
void SequentialListTest() {
SortSqList SqList;
SqList.length = 4000;
SequentialList(SqList);
clock_t start finish; //计时的开始和结束
double totaltime; //总用时
cout << “将生成“ << SqList.length << “个数的顺序数列进行排序\n\n“;
cout << “顺序数列生成完毕“;
start = clock();//计时开始
InsertSort(SqList);
finish = clock();//计时结束
totaltime = (double)(finish - start) / CLOCKS_PER_SEC;//计算用时
cout << “\n直接插入排序比较次数、移动次数分别为“ << CompCounter << “、“ << MovCounter << endl;
cout << “用时“ << totaltime << “秒\n\n“;
cout << “顺序数列生成完毕“;
start = clock();
MergeSort(SqList);
finish = clock();//计时结束
totaltime = (double)(finish - start) / CLOCKS_PER_SEC;//计算用时
cout << “\n归并排序比较次数、移动次数分别为“ << CompCounter << “、“ << MovCounter << endl;
cout << “用时“ << totaltime << “秒\n\n“;
cout << “顺序数列生成完毕“;
start = clock();//计时开始
QuickSort(SqList);
finish = clock();//计时结束
totaltime = (double)(finish - start) / CLOCKS_PER_SEC;//计算用时
cout << “\n快速排序比较次数、移动次数分别为“ << CompCounter << “、“ << MovCounter << endl;
cout << “用时“ << totaltime << “秒\n\n“;
cout << “顺序数列生成完毕“;
start = clock();//计时开始
HeapSort(SqList);
finish = clock();//计时结束
totaltime = (double)(finish - start) / CLOCKS_PER_SEC;//计算用时
cout << “\n堆排序比较次数、移动次数分别为“ << CompCounter << “、“ << MovCounter << endl;
cout << “用时“ << totaltime << “秒\n\n“;
cout << “顺序数列生成完毕“;
int dlta[6] = { 364121401341 };//增量序列
start = clock();
ShellSort(SqList dlta 6);
finish = clock();//计时结束
totaltime = (double)(finish - start) / CLOCKS_PER_SEC;//计算用时
cout << “\n希尔排序比较次数、移动次数分别为“ << CompCounter << “、“ << MovCounter << endl;
cout << “用时“ << totaltime << “秒\n\n“;
cout << “顺序数列生成完毕“;
start = clock();//计时开始
BubbleSort(SqList);
finish = clock();//计时结束
totaltime = (double)(finish - start) / CLOCKS_PER_SEC;//计算用时
cout << “\n冒泡排序比较次数、移动次数分别为“ << CompCounter << “、“ << MovCounter << endl;
cout << “用时“ << totaltime << “秒\n\n“;
cout << “顺序数列生成完毕“;
start = clock();//计时开始
SelectSort(SqList);
finish = clock();//计时结束
totaltime = (double)(finish - start) / CLOCKS_PER_SEC;//计算用时
cout << “\n选择排序比较次数、移动次数分别为“ << CompCounter << “、“ << MovCounter << endl;
cout << “用时“ << totaltime << “秒\n\n\n\n“;
system(“pause“);
}
//用逆序数列测试
void ReverseListTest() {
SortSqList SqListSqList2;
SqList.length = 4000; SqList2.length = SqList.length;
ReverseList(SqList);
clock_t start finish; //计时的开始和结束
double totaltime; //总用时
cout << “将生成“ << SqList.length << “个数的顺序数列进行排序\n\n
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2016-09-08 14:05 各种排序算法时间性能的比较\.vs\
目录 0 2016-09-08 14:05 各种排序算法时间性能的比较\.vs\各种排序算法时间性能的比较\
目录 0 2016-09-08 14:05 各种排序算法时间性能的比较\.vs\各种排序算法时间性能的比较\v14\
文件 35840 2016-09-19 16:20 各种排序算法时间性能的比较\.vs\各种排序算法时间性能的比较\v14\.suo
目录 0 2016-09-08 14:05 各种排序算法时间性能的比较\Debug\
文件 67584 2016-09-08 09:47 各种排序算法时间性能的比较\Debug\各种排序算法时间性能的比较.exe
文件 605880 2016-09-08 09:47 各种排序算法时间性能的比较\Debug\各种排序算法时间性能的比较.ilk
文件 1339392 2016-09-08 09:47 各种排序算法时间性能的比较\Debug\各种排序算法时间性能的比较.pdb
文件 500 2016-09-20 13:57 各种排序算法时间性能的比较\README.txt
文件 10964992 2016-09-19 16:20 各种排序算法时间性能的比较\各种排序算法时间性能的比较.sdf
文件 1399 2016-08-31 20:35 各种排序算法时间性能的比较\各种排序算法时间性能的比较.sln
目录 0 2016-09-19 16:20 各种排序算法时间性能的比较\各种排序算法时间性能的比较\
目录 0 2016-09-08 14:05 各种排序算法时间性能的比较\各种排序算法时间性能的比较\Debug\
文件 429056 2016-09-08 09:47 各种排序算法时间性能的比较\各种排序算法时间性能的比较\Debug\vc140.idb
文件 413696 2016-09-08 09:47 各种排序算法时间性能的比较\各种排序算法时间性能的比较\Debug\vc140.pdb
文件 418 2016-09-08 09:47 各种排序算法时间性能的比较\各种排序算法时间性能的比较\Debug\各种排序算法时间性能的比较.log
目录 0 2016-09-08 14:05 各种排序算法时间性能的比较\各种排序算法时间性能的比较\Debug\各种排序算法时间性能的比较.tlog\
文件 696 2016-09-08 09:47 各种排序算法时间性能的比较\各种排序算法时间性能的比较\Debug\各种排序算法时间性能的比较.tlog\CL.command.1.tlog
文件 11482 2016-09-08 09:47 各种排序算法时间性能的比较\各种排序算法时间性能的比较\Debug\各种排序算法时间性能的比较.tlog\CL.read.1.tlog
文件 696 2016-09-08 09:47 各种排序算法时间性能的比较\各种排序算法时间性能的比较\Debug\各种排序算法时间性能的比较.tlog\CL.write.1.tlog
文件 1350 2016-09-08 09:47 各种排序算法时间性能的比较\各种排序算法时间性能的比较\Debug\各种排序算法时间性能的比较.tlog\li
文件 2690 2016-09-08 09:47 各种排序算法时间性能的比较\各种排序算法时间性能的比较\Debug\各种排序算法时间性能的比较.tlog\li
文件 680 2016-09-08 09:47 各种排序算法时间性能的比较\各种排序算法时间性能的比较\Debug\各种排序算法时间性能的比较.tlog\li
文件 257 2016-09-08 09:47 各种排序算法时间性能的比较\各种排序算法时间性能的比较\Debug\各种排序算法时间性能的比较.tlog\各种排序算法时间性能的比较.lastbuildstate
文件 118480 2016-09-08 09:47 各种排序算法时间性能的比较\各种排序算法时间性能的比较\Debug\源.obj
文件 91357 2016-09-03 16:18 各种排序算法时间性能的比较\各种排序算法时间性能的比较\Debug\源.obj.enc
文件 5802 2016-08-31 21:12 各种排序算法时间性能的比较\各种排序算法时间性能的比较\各种排序算法时间性能的比较.vcxproj
文件 1069 2016-08-31 21:12 各种排序算法时间性能的比较\各种排序算法时间性能的比较\各种排序算法时间性能的比较.vcxproj.filters
文件 6481 2016-09-19 16:20 各种排序算法时间性能的比较\各种排序算法时间性能的比较\排序实现.h
文件 12177 2016-09-08 00:05 各种排序算法时间性能的比较\各种排序算法时间性能的比较\源.cpp
文件 200169 2016-10-08 00:49 设计说明书(排序算法时间性能比较).docx
............此处省略0个文件信息
- 上一篇:自编八皇后问题递归、非递归算法
- 下一篇:syslog解析类C++
相关资源
- 数据结构与算法分析 C++语言描述 第二
- C++ 数据结构 迷宫求解
- 数据结构与算法分析(C++版)张铭译
- 文本编辑器(报告+源代码) MFC VC 数
- 严蔚敏数据结构C语言版视频教程之总
- MFC 图数据结构 最短路径
- 数据结构—使用C语言第4版
- 航空客运订票系统数据结构课程设计
- C++ 学籍管理系统
- 数据结构与算法分析:C语言描述(原书
- 南邮《数据结构-C语言描述》陈慧南主
- 数据结构基础(C语言版) 习题答案
- c++数据结构实现经典背包问题
- 数据结构课程设计:表达式求值,C
- 数据结构c语言版本严蔚敏清华大学
- 数据结构c语言版本
- 数据结构(C++版) 唐宁九
- 数据结构算法设计C++,乐学答案
- 数据结构与算法分析C++版 Clifford A.
- 数据结构C语言版第2版课后习题答案
- 哈工大软件学院07级数据结构课程设计
- 单向链表类模板全C++
- 数据结构C++语言进出堆栈动画
- 数据结构课程设计图书管理系统c语言
- c++数据结构 算法模板
- 哈夫曼编码译码器数据结构
- 数据结构C语言版(经典绝版)清华大
- 数据结构课程设计,最小生成树,采
- 数据结构 图 景点信息管理系统
- 数据结构 C语言描述 第2版 殷人昆 随
评论
共有 条评论