• 大小: 5.28MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-09-30
  • 语言: C/C++
  • 标签: 排序  

资源简介

这是用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个文件信息

评论

共有 条评论