早教吧 育儿知识 作业答案 考试题库 百科 知识分享

快排算法是怎样排序的呢若是以第一个元素为基准,21 25 5 17 9 23 30这个序列的第一遍排序后的结果是什么呢

题目详情
快排算法是怎样排序的呢
若是以第一个元素为基准,21 25 5 17 9 23 30这个序列的第一遍排序后的结果是什么呢
▼优质解答
答案和解析
快排的一趟称为一次划分,原因是一趟排序后,数组以基准元素X为界,左边的元素都小于等于X,右边的元素都大于等于X.
要做到这点:先刨去21,再设俩指针,一个指向最左边,一个指向最右边.左边指针的往右走,找一个大于等于21的元素,右边的指针往左走,找一个小于等于21的元素,然后俩指针的值交换.继续循环上面的过程.直到俩指针相遇或擦肩而过.把21交换到俩指针相遇的地方就可以了.
第一次交换25和9,然后俩指针相遇,把21和界限处的17交换,得到:
结果:17 9 5 21 25 23 30
看了 快排算法是怎样排序的呢若是以...的网友还看了以下: