快速排序是在等待排序的n個記錄中隨機(jī)取出一個元素作為基準(zhǔn),比基準(zhǔn)小的元素放到基準(zhǔn)左邊,比基準(zhǔn)大的放到基準(zhǔn)的右邊。
然后分別對基準(zhǔn)兩邊的子序列進(jìn)行上一步的操作。遞歸的進(jìn)行,直到排序完成。
可以設(shè)置兩個游標(biāo)分別對序列左右兩端的元素進(jìn)行跟蹤。以方便和基準(zhǔn)比較大小進(jìn)行移動。
如圖所示,low 和 heigh分別代表序列的兩端。
設(shè)置兩個游標(biāo),初始值均放在兩端。
假設(shè)我們?nèi)〉?基準(zhǔn)元素就是該序列的最后一個元素 ,將其放在 一個臨時變量上 如:temp temp=4
游標(biāo) i 的作用自左向右移動,找出比基準(zhǔn)大的元素,