数据结构实验教学中排序算法的动态演示

数据结构实验教学中排序算法的动态演示

ID:10146486

大小:29.00 KB

页数:7页

时间:2018-06-11

数据结构实验教学中排序算法的动态演示_第1页
数据结构实验教学中排序算法的动态演示_第2页
数据结构实验教学中排序算法的动态演示_第3页
数据结构实验教学中排序算法的动态演示_第4页
数据结构实验教学中排序算法的动态演示_第5页
资源描述:

《数据结构实验教学中排序算法的动态演示》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、数据结构实验教学中排序算法的动态演示摘要:从算法与数据结构这门课程的实验教学实际出发,利用Java语言开发排序算法动态演示系统,实现了八种不同基本排序算法的动态排序演示。教学实践证明,直观生动的将排序算法的执行过程进行演示,有利于学生更好的理解掌握各种排序算法的基本思想,有效地提高了实验课程的教学效果。关键词:数据结构;排序算法;实验教学;动态演示中图分类号:TP311.12;TP301.6“算法与数据结构”是计算机科学与技术学科中一门十分重要的专业基础课程和专业核心课程[1]。在计算机科学与技术学科的各个分支学科领域中,都要求具备良好的算法与数据结构

2、基础[2]。7“排序及基本算法”是算法与数据结构课程的一个重要组成部分,是信息检索、数据处理的基础,在整个计算机科学与技术领域上被广泛应用。作为数据结构课程教学的重点与难点之一,用传统静态的课堂讲授方式很难将排序算法的执行过程生动的动态演示出来,教学效果收效甚微。所以有必要在实验教学过程中,对排序加以动态演示,可以使学生更好的理解排序概念和各种排序算法的思想方法,掌握各种不同排序的基本算法,更加直观的看出各种排序算法的排序过程和运行效率,达到学以致用和灵活运用各种排序算法。1排序与排序算法排序就是将一组无序的数据元素序列重新排列整理成为一个有序的数据元

3、素序列的过程。排序是数据处理中的重要运算,应用十分广泛,在计算机科学与技术学科中扮演着非常重要的角色[3]。排序算法的种类繁多,但是没有一种排序算法是可以通用的,即任何情况下都能保持最快的排序速度。排序算法的效率高低会对程序实现应用问题求解的复杂度产生直接影响。因此我们必须根据需要处理的数据特点和不同的应用环境来选择适合的排序算法。最基础最常用的排序算法有五类:插入排序、选择排序、交换排序、归并排序和基数排序,其他排序算法基本上都是在这五类基础排序算法思想方法基础上的改进和优化。插入排序的基本方法是每次将一个待排序的数据元素按照其大小插入到前面已经排好

4、序的部分数据序列中的适当位置,直到全部数据元素插完,整个数据序列已排好序为止[4]。插入排序主要包括最简单的直接插入排序和希尔排序两种,还有其他在直接插入排序基础上改进的插入排序算法[5]。7选择排序的基本方法是每一趟从待排序数据中,依次选出关键字值最小(或最大)的数据按照顺序要求放在当前已经排好序的序列的最后,直到所有数据均排序完毕[4]。选择排序主要包括直接选择排序和堆排序[5]。交换排序的基本方法是两两比较待排序数据元素的大小,根据比较结果交换那些不满足顺序要求的数据元素对,直到全部待排序数据元素都已满足顺序要求没有再需要交换时为止。交换排序主要

5、包括冒泡排序和快速排序[5]。归并排序是采用分治法的一个非常典型的应用。其基本思想是将一些已经排好序的子数据元素序列进行合并,得到已经排好序的更大的子数据元素序列,这种过程一直进行下去,从而得到一个完整的有序数据元素序列。即先使每个子数据元素序列中数据元素有序,再使子数据元素序列之间也有序的逐步扩张有序子数据元素序列的方法。基数排序原理是借助于多关键字排序的思想,通过对待排序数据元素按单逻辑关键字进行分配和收集来实现。也就是将整数按位数切割成不同的数字,然后按每个数位上的数值分别进行多趟分配和收集。7这些基础的排序方法中,直接插入排序、直接选择排序、冒

6、泡排序是理解排序思想的最基本方法;而希尔排序、快速排序、堆排序、归并排序和基数排序是运行效率较高的几种排序方法,也是教学过程中的重点和难点内容。基数排序是基于多关键字的多次分配和收集的过程排序,排序效率依赖于关键字的位数,与待排序数据文件的规模无关;而其他排序方法都是基于关键字值的大小比较的排序方法,排序效率依赖于待排序数据文件的规模。2排序算法动态演示系统2.1系统需求排序实验演示系统是针对算法与数据结构课程中排序算法的实验教学设计的辅助教学系统,其基本要求是对教学内容中的五类基本排序算法都能够起到辅助教学的作用,尤其是希尔排序、快速排序、堆排序、归

7、并排序和基数排序几种重要的有一定难度的算法不可缺失;对每一种排序算法的排序过程中数据元素的动态变化过程要能够动态显示,直观生动的动态显示有助于学生加深理解和掌握算法的基本思想,巩固课堂教学效果。本文介绍的排序实验演示系统结构简单,主要功能为演示所选择的排序算法的动态执行过程以及实现相应算法的JAVA语言程序代码的显示。功能结构如图1所示。图1功能结构由于排序演示系统是为了辅助算法与数据结构课程中的实验教学,所以系统环境仅需普通实验课机房微机和基本系统及软件配置。本校数据结构课程实验环境为:联想启天M430E,英特尔奔腾G850处理器,主频2.93GHz

8、,内存2G;MicrosoftWindowsXP,JavaSEDevelopmentKit(J

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。