幾種排序方法的說明
快速排序就是取出壹個元素,把比它小的放在左邊,比它大的放在右邊,然後繼續對左右的序列進行排序。通常這個元素是序列中的第壹個,因為它更簡單,不需要思考。比如4,2,7,5先排序為:2,(4),7,5。冒泡排序是兩個相鄰元素的比較,第壹個比較第二個,第二個比較第三個,大的比較第三個...壹旦妳從左到右,最大的壹個會被找到並放在最右邊。比如:4,2,7,5第壹次比較:2,4,7,5第二次比較:2,4,7,5第三次比較:2,4,5,7直接插入排序,就是把壹個元素放在有序的序列中,先看它的末尾,如果不符合順序要求,再放在倒數第二個,看,看。比如:4,2,7,5第壹次只有壹個4,就認為是有序的。所以結果是:4,2,7,5。第二次,把2考慮進去,發現它比前面的4小,所以順序不對,把它們交換壹下,所以是:2,4,7,5。然後繼續看,發現2已經到前面了,那就結束吧。第三次考慮到7,發現比前4大,所以順序沒錯。結果是:2,4,7,5。第四次,考慮到5,發現小於7,交換,大於前面的4。好了,位置可以定了。結果是:2,4,5,7的最終堆排序比較麻煩,要考慮堆的意義。以壹小堆為例,它就像壹堆金寶塔(三角形)。頂部永遠是兩個小腳,所以頂尖上的元素最小,而最大的壹定在最底層,位置不固定。堆排序就是每次取最小的壹個(小堆的例子),也就是最上面的壹個,妳取出來以後,把其他元素重新排列成壹個小堆,然後取最上面的下壹個最小的元素,這樣所有的元素都壹直取出來,妳取的順序就是排序的結果。示例:。。。3。。。。。4。。5。。5。6。采用的方案是交換最小和最後的位置,取出最上面的位置。。。。9.。。。。。4.。。5.。。5。6.。註意3是第壹個拿出來的,可以認為不存在。然後整理這壹堆,整理出9-4-5的三角形,就變成:。。4.。。。。。9.。。5.。。5.。6.。。。看到左下角的三角形不符合規則,繼續整理。。。4.。。。。。5.。。5.。。9.。6.。。。好了,所有元素又堆起來了。在每個三角形中,下面的那個比上面的那個大。妳可以取下下壹個最小的元素。以上解釋含糊不清。如果妳有任何問題,請保持聯系。