求快速排序实例精解?

[复制链接]
查看11 | 回复2 | 2012-10-23 20:03:23 | 显示全部楼层 |阅读模式
快速排序虽然思想是一样的,但是版本还是不一样的,这里给你介绍一种。首先从待排序区间(a[0]~a[n-1])中选取一个元素作为比较的基准元素(为方便起见,一般选取该区间的第一个元素),通过从区间两端向中间顺序进行比较和交换,便使前面的单元中只保留比基准元素小的元素,后面单元保留只比基准元素大的元素。当所有元素比较完一遍之后,将基准元素换到两部分单元的交界处,基准元素的位置就是排序后的最终位置。设置两个变量i,j,i从1开始,j从n-1开始,i递增,知道碰见第一个比基准元素大的元素,停下来,j递减,直至碰见比基准元素小的值停下来,然后交换i, j所指的两个元素,然后重复上述步骤,直至j <= i;停止,然后将基准元素和j所指元素交换,这时候完成了第一次排...
回复

使用道具 举报

千问 | 2012-10-23 20:03:23 | 显示全部楼层
看看数据结构的书,举出一个列子按照书上的程序走几遍可以加深理解。...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行