小甲鱼 发表于 2014-3-25 00:12:57

第九十六讲 快速排序(视频+课件+源代码)

该讲座视频下载地址:

http://blog.fishc.com/3250.html


该讲座所需课件:






注:VIP会员享有免费下载本站所有资源的特权!

友情提示:通过购买鱼C光盘/优盘打包(具体内容)均可加入VIP终身会员^_^



500年前 发表于 2014-6-1 23:43:47

真是难得给力的帖子啊。

zlq54321 发表于 2015-11-3 14:16:06

SOE-516 下载失败都录进去了呢

q942653118 发表于 2015-11-21 11:28:04

加油~~~~~

傻傻z 发表于 2016-4-25 11:06:05

为啥是大于等于和小于等于呢?我改成大于和小于了也能正确排序呀

圣狄雅哥 发表于 2018-6-12 15:56:16

void QSort(int k[], int low, int high)
{
        int point;

        if( low < high )
        {
                point = Partition(k, low, high);

                QSort(k, low, point-1);

                QSort(k, point+1, high);
        }
}

Partition函数中的low和high是局部变量,其值的变化不影响QSort函数中low和high迭代的赋值

圣狄雅哥 发表于 2018-6-12 16:02:56

本帖最后由 圣狄雅哥 于 2018-6-12 16:11 编辑

傻傻z 发表于 2016-4-25 11:06
为啥是大于等于和小于等于呢?我改成大于和小于了也能正确排序呀

当然可以。不过改变不等号方向排序就是从大到小。low和high只是表示数组中低位和高位的位置,由于未排序的数组顺序未定,经Patition函数“排序”后只是用low下标表示这组数据中间元素的位置,结束时high和low值相同,high也未必就是最大的
页: [1]
查看完整版本: 第九十六讲 快速排序(视频+课件+源代码)