排序算法的动态演示及性能分析.doc

  • 需要金币1000 个金币
  • 资料包括:完整论文
  • 转换比率:金钱 X 10=金币数量, 即1元=10金币
  • 论文格式:Word格式(*.doc)
  • 更新时间:2019-01-26
  • 论文字数:9932
  • 当前位置论文阅览室 > 毕业设计 > 信息与计算科学 >
  • 课题来源:(神笔马良)提供原创文章

支付并下载

摘要:随着社会的不断发展与进步,计算机技术随着社会的脚步也在不断的提高与发展,我们对于数据的需求与运算要求也越来越高。对于数据的处理,很多时候,我们都需要对各种数据进行排序,将一组任意序列梳理成我们需要的非递增或非递减序列。在这个过程中,为了提高我们处理数据的速率与效率,我们就需要选择一种最适用,效率最高的算法。

在本系统中,我采用Visual C++ 6.0作为开发平台,利用它的可视化界面,在其MFC环境下,运用C++编程语言,将程序中的算法和程序框架有效的结合起来,以实现排序算法的动态演示及其性能分析。本系统界面简单直观,操作简易,可以作为排序算法的可视化界面教学软件,让老师和同学更好的理解与分析排序算法。

关键词:Visual C++ 6.0; MFC; 排序算法; 动态演示

 

目录

摘要

Abstract

1 概述-1

1.1 系统目的与意义-1

1.2 系统的开发环境及技术-1

1.3 文章的结构-2

2 常用排序算法及其思想-2

2.1 冒泡排序-2

2.2 直接插入排序-4

2.3 希尔排序-6

2.4 简单选择排序-8

2.5 快速排序-9

2.6 堆排序-12

3 系统设计-15

3.1 系统需求分析-15

3.1.1 系统实现的名称-15

3.1.2 系统实现的目的-15

3.1.3 系统实现的功能-15

3.2 系统概要设计-16

3.2.1 系统整体设计思路-16

3.2.2 系统整体流程图-17

3.3 系统详细设计-18

3.3.1排序算法动态演示系统的模块设计-18

3.3.2演示系统模块的详细设计-18

3.4程序详解-21

3.4.1界面框架设计-21

3.4.2排序算法实现-22

3.4.3消息处理-27

3.4.3画笔和画刷-29

3.4.4线程-29

4 系统测试-30

4.1系统界面模块-30

4.2算法演示模块-33

5 总结-41

致谢-42