排序程序设计

2020-04-14 05:02

课 程 设 计 报 告

(2013 -2014第2学期)

课程设计类型:题 目:学 号:姓 名:专 业:指 导 教 师:课程设计日期: 软硬件设计 通用排序程序 121001260809 胡柳 自动化,中美互认 李建敦 2014.06.16—2014.06.20

目录

1. 课题分析 ....................................................................................................... 1

1.1 背景介绍 .................................................................................................. 1 1.2 需求分析 ................................................................................................. 2

2. 总体设计 ....................................................................................................... 4

2.1 总体思路 ................................................................................................. 4 2.2 相关技术 ................................................................................................. 4 3. 详细设计 ........................................................................................................ 5

3.1 设计原则 ................................................................................................. 5 3.2 模块设计 ................................................................................................. 5 4. 实现与测试 ................................................................................................... 6

4.1 实现环境 ................................................................................................. 6 4.2 模块实现 ................................................................................................. 6 4.3测试 .......................................................................................................... 7 5. 总结与展望 ................................................................................................... 8

5.1 总结 ......................................................................................................... 8 5.2 展望 ......................................................................................................... 8

参考文献 ........................................................................................................... 10

附录 .................................................................................................................... 11 答辩记录 ........................................................................................................... 16

1. 课题分析

1.1 背景介绍

排序是数据处理中经常使用的一种重要运算。设文件由n个记录{R1,R2,,,,Rn}组成,如n个学生记录,每个学生记录包括学号、姓名、班级等。n个记录对应的关键字集合为{K1,K2,,,,,Kn},如学生的学号。所谓排序就是将这n个记录按关键字大小递增或递减重新排列。

当待排序记录的关键字均不相同时,排序结果是唯一的,否则排序结果不唯一。如果文件中关键字相同的记录经过某种排序方法进行排序后,仍能保持它们在排序之前的相对次序,则称这种排序方法是稳定的;否则,这种排序方法是不稳定的。

由于文件大小不同使排序过程中涉及的储存器不同,可将排序分成内部排序和外部排序两类。整个排序过程都在内存进行的排序,称为内部排序;反之,若排序过程中要进行数据的内、外存交换,则称之为外部排序。内排序适用于记录个数不是很多的小文件,而外排序则适用于记录个数太多,不能一次性放入内存的大文件。 按策略划分,内部排序方法可以分为五类:插入排序、选择排序、交换排序、归并排序和分配排序。几乎所有的排序都有两个基本的操作:

(1)关键字大小的比较。

(2)改变记录的位置。具体处理方式依赖于记录的存储形式,对于顺序型记录,一般移动记录本身,而链式存储的记录则通过改变指向记录的指针实现重定位。

排序算法很多,不同的算法有不同的优缺点,没有哪种算法在任何情况下都是最好的。评价一种排序算法好坏的标准主要有两条:

(1)执行时间和所需的辅助空间,即时间复杂度和空间复杂度; (2)算法本身的复杂程度,比如算法是否易读、是否易于实现。 在本次实验设计程序中,编一通用排序程序,程序可以对任意类型的数值常数或字符串构成的行进行排序,通过人机对话选择程序是按数值进行排序还是按字符顺序进行排序。排序是针对数据文件的。例如

初识数据为:12,24,9,128,3,76,345 按数值大小排序应为:3,9,12,24,76,128,345 按字符串大小排序应为:12,128,24,3,345,76,9

需要将数据文件按数值大小进行排序,以及按字符大小进行排序。

1

1.2 需求分析

利用if-else语句根据输入的代表不同功能的数字来用不同的方法处理数据。输入数字1时用数值排序方式处理数据;输入数字2时用字符方式排序法处理数据。输入数字0时退出程序,输入数字1时继续程序。

虽然排序有不同的方法,但是,其基本操作不外乎两种: (1)关键字大小的比较。

2


排序程序设计.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2016-2022年中国锅炉市场深度研究与发展前景预测报告 - 图文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: