资源简介
这是用MFC写的,开发环境是VC++。
主要实现7种排序算法(直接插入排序、堆排序、基数排序、冒泡排序、归并排序、希尔排序、快速排序),能计算每种排序算法的运行时间,进行多次排序后,可以对各种排序算法时间复杂度进行直线拟合,并以图线的形式表示,其中,画图部分是调用外部CCHART库来完成的。以上是本程序的主要功能,还有一些细节的东西请打开工程自行探索。
程序亲测无误。
代码片段和文件信息
// pic.cpp : implementation file
//
#include “stdafx.h“
#include “sort2.h“
#include “pic.h“
#include “sort2Dlg.h“
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// pic dialog
pic::pic(CWnd* pParent /*=NULL*/)
: CDialog(pic::IDD pParent)
{
//{{AFX_DATA_INIT(pic)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
}
void pic::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(pic)
// NOTE: the ClassWizard will add DDX and DDV calls here
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(pic CDialog)
//{{AFX_MSG_MAP(pic)
ON_WM_DESTROY()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// pic message handlers
void pic::OnDestroy()
{
CDialog::OnDestroy();
// TODO: Add your message handler code here
m_ChartWnd.Detach();
}
BOOL pic::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
m_ChartWnd.Attach(m_hWnd IDC_picture kTypeXY);
m_ChartWnd.GetChart()->SetEdgeShow(0);
m_ChartWnd.GetChart()->SetBorderShow(0);
m_ChartWnd.GetChart()->SetLangurage(1);
m_ChartWnd.GetChart()->SetBkgndColor(RGB(255255255));
double pX[10000] pY[10000];
int i;
int ID0ID1ID2ID3ID4ID5ID6;
for(i=0; i {
pX[i] = zero[i].number_save;
pY[i] = zero[i].time_save;
}
ID0=m_ChartWnd.GetChart()->AddCurve(pX pY zero_line);
for(i=0; i {
pX[i] = first[i].number_save;
pY[i] = first[i].time_save;
}
ID1=m_ChartWnd.GetChart()->AddCurve(pX pY first_line);
for(i=0; i {
pX[i] = second[i].number_save;
pY[i] = second[i].time_save;
}
ID2=m_ChartWnd.GetChart()->AddCurve(pX pY second_line);
for(i=0; i {
pX[i] = third[i].number_save;
pY[i] = third[i].time_save;
}
ID3=m_ChartWnd.GetChart()->AddCurve(pX pY third_line);
for(i=0; i {
pX[i] = forth[i].number_save;
pY[i] = forth[i].time_save;
}
ID4=m_ChartWnd.GetChart()->AddCurve(pX pY forth_line);
for(i=0; i {
pX[i] = fifth[i].number_save;
pY[i] = fifth[i].time_save;
}
ID5=m_ChartWnd.GetChart()->AddCurve(pX pY fifth_line);
for(i=0; i {
pX[i] = sixth[i].number_save;
pY[i] = sixth[i].time_save;
}
ID6=m_ChartWnd.GetChart()->AddCurve(pX pY sixth_line);
m_ChartWnd.GetChart()->Settitle(_T(“排序算法比较“));
m_ChartWnd.GetChart()->SetUseLegend(true);
//图例名称
m_ChartWnd.GetChart()->SetDatatitle(_T(“堆排序“) I
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 356 2017-01-08 11:08 7种排序算法、时间对比及时间复杂度直线拟合\readme.txt
文件 279 2016-10-21 22:54 7种排序算法、时间对比及时间复杂度直线拟合\排序算法工程\BubbleSort.txt
文件 45629 2016-10-11 19:11 7种排序算法、时间对比及时间复杂度直线拟合\排序算法工程\Chart.h
文件 20853 2016-10-29 16:48 7种排序算法、时间对比及时间复杂度直线拟合\排序算法工程\Debug\pic.obj
文件 0 2016-10-29 16:48 7种排序算法、时间对比及时间复杂度直线拟合\排序算法工程\Debug\pic.sbr
文件 5194752 2016-11-02 08:49 7种排序算法、时间对比及时间复杂度直线拟合\排序算法工程\Debug\sort2.bsc
文件 200770 2016-11-02 08:49 7种排序算法、时间对比及时间复杂度直线拟合\排序算法工程\Debug\sort2.exe
文件 274820 2016-11-02 08:49 7种排序算法、时间对比及时间复杂度直线拟合\排序算法工程\Debug\sort2.ilk
文件 15765 2016-10-29 16:48 7种排序算法、时间对比及时间复杂度直线拟合\排序算法工程\Debug\sort2.obj
文件 6878504 2016-10-29 16:48 7种排序算法、时间对比及时间复杂度直线拟合\排序算法工程\Debug\sort2.pch
文件 418816 2016-11-02 08:49 7种排序算法、时间对比及时间复杂度直线拟合\排序算法工程\Debug\sort2.pdb
文件 63720 2016-10-29 16:48 7种排序算法、时间对比及时间复杂度直线拟合\排序算法工程\Debug\sort2.res
文件 0 2016-10-29 16:48 7种排序算法、时间对比及时间复杂度直线拟合\排序算法工程\Debug\sort2.sbr
文件 73756 2016-11-02 08:49 7种排序算法、时间对比及时间复杂度直线拟合\排序算法工程\Debug\sort2Dlg.obj
文件 0 2016-11-02 08:49 7种排序算法、时间对比及时间复杂度直线拟合\排序算法工程\Debug\sort2Dlg.sbr
文件 105516 2016-10-29 16:48 7种排序算法、时间对比及时间复杂度直线拟合\排序算法工程\Debug\StdAfx.obj
文件 1368977 2016-10-29 16:48 7种排序算法、时间对比及时间复杂度直线拟合\排序算法工程\Debug\StdAfx.sbr
文件 214016 2016-11-02 08:49 7种排序算法、时间对比及时间复杂度直线拟合\排序算法工程\Debug\vc60.idb
文件 380928 2016-11-02 08:49 7种排序算法、时间对比及时间复杂度直线拟合\排序算法工程\Debug\vc60.pdb
文件 557 2016-10-21 23:02 7种排序算法、时间对比及时间复杂度直线拟合\排序算法工程\HeapSort.txt
文件 250 2016-10-21 23:02 7种排序算法、时间对比及时间复杂度直线拟合\排序算法工程\InsertSort.txt
文件 805 2016-10-21 23:02 7种排序算法、时间对比及时间复杂度直线拟合\排序算法工程\mergesort.txt
文件 4221 2016-10-29 10:27 7种排序算法、时间对比及时间复杂度直线拟合\排序算法工程\pic.cpp
文件 1829 2016-10-26 23:16 7种排序算法、时间对比及时间复杂度直线拟合\排序算法工程\pic.h
文件 2412544 2016-10-11 19:12 7种排序算法、时间对比及时间复杂度直线拟合\排序算法工程\PlotDll.dll
文件 264882 2016-10-11 19:12 7种排序算法、时间对比及时间复杂度直线拟合\排序算法工程\PlotDll.lib
文件 4825153 2016-10-11 19:12 7种排序算法、时间对比及时间复杂度直线拟合\排序算法工程\PlotDll_d.dll
文件 266544 2016-10-11 19:12 7种排序算法、时间对比及时间复杂度直线拟合\排序算法工程\PlotDll_d.lib
文件 360 2016-10-21 23:02 7种排序算法、时间对比及时间复杂度直线拟合\排序算法工程\QuickSort.txt
文件 908 2016-10-27 22:50 7种排序算法、时间对比及时间复杂度直线拟合\排序算法工程\RadixSort.txt
............此处省略30个文件信息
- 上一篇:基于VC++的UDP文件传输系统
- 下一篇:江苏C语言二级试题真题集
相关资源
- 二叉排序树 建立 查询 删除
- vc++6.0 MFC实现排序算法
- C/C++数据结构_随机10000个数:排序~8大
- 算法I~IVC++实现——基础、数据结构
- c++ 冒泡排序
- C++ 对数据进行多条件排序
- 各种排序算法可视化.rar
- 基于MFC编程的冒泡排序动态演示
- C++大作业4种排序算法演示.docx
- 算法Ⅰ~ⅣC++实现——基础、数据结
- 成绩排序或成绩管理系统的C++代码实
- 算法设计实验报告-快速排序和归并排
- 七种排序算法包括直接插入排序,折
- c语言实现堆排序算法
- 数据结构课程设计 二叉排序树的实现
- 内部排序算法的比较分析与实现
- c语言排序算法插入,起泡,快速,选
- 基于PCL的对点云的排序
- 数据结构课程设计c++排序算法的比较
- 使用双向链表实现快速排序,C语言
- 数据结构c语言版快速排序实验报告
- 利用指针数组冒泡法排序
- n个数冒泡排序法
- 各种排序效率比较程序冒泡,选择,
- 排序算法综合:有直接插入排序,希
- 重写CListCtrl类,行颜色显示,列自动
- VC++写的功能非常强大的自定义列表控
- 二叉树成绩管理系统
- 二叉排序树 学生管理系统
- 二叉排序树查找算法
评论
共有 条评论