三、设计方法和基本原理
1. 问题描述:
将一组无序数列按一定规律排序。
2. 问题的解决方案:
根据问题的描述,可以按照要求的功能采用结构化的设计思想。
(1) 数列的赋值要求用函数实现。
(2) 使用“冒泡法”进行排序,用函数实现并统计排序次数。
(3) 使用“quicksort法”进行排序,用函数实现并统计排序次数。
(4) 比较以上两种排序方法的优劣。
2、“quicksort法”排序的实现。
“quicksort法”排序算法采用的是递归方法,要求分界值的选定采用数组中间项的值。
工作过程如下:
第一步:选择一个分界值,把数组分成两部分,大于等于分界值的元素集中到数组的某一部分,小于分界值的元素集中到数组的另一部分。
第二步:对分出来的两部分,又分别重复第一步的过程,直到整个数组排序完毕。
例如:设定字符数组A为:f e d a c b
(1) 选定 d作为分界值,则在第一遍划分后数组重新安排如下:b c a d e f
(2) 在第一遍划分b c a和 d e f两部分后,又分别对这两部分进行划分,过程是递归。
使用“quicksort法”进行排序的程序怎么编?我急用!
帮个忙,谢谢了!
--------------------next---------------------
阅读(1848) | 评论(0) | 转发(0) |